短到只有几个字的前一篇就当是序好了。还不至于厚脸皮到那么几个字就当成是一,虽然我是很想。。。。
我想了一天,我为什么要选Ajax?或者说Ajax的优势在哪里?大概有:
- 对公司而言,有丰富的现有资源可供整合(Applet、ActiveX控件)。
- 完全开放的平台、完美的技术组合:HTML+CSS+Javascript、技术框架已经非常成熟。
- 容易上手,普及率高(这对项目经理来说是多致命的诱惑),足够多的在线资源可供搜索,无数同行的blog和论坛为你的应用之路保驾护航。(尤其在中文方面,一个js的问题查找解决办法很容易的,几乎你的每一个问题都有人解决过了,而一个Flex的,麻烦输英文吧,还不一定有人解决过,我就找到了好多许愿的帖子,愿这个问题在下一个版本中解决。。。。。。)。
- 单个页面足够小,几乎没有加载时间(相对于Flex)
- 各层次完美的分离,而且是真的分离了(相对于Flex,Flex只是程序结构上分离了,部署了之后不会有太大的区别)。你不得不承认,作为前辈Ajax的结构相当完美。
- 对“敏捷”友好,容易TDD。
- 配有强大成熟的自动化测试工具助你完成健壮的程序。
如果以上还不足以让你觉得Ajax有什么吸引人的,那么麻烦点击下面几个链接:
什么叫丰富的资源,以此为例:
http://www.java2s.com/Code/JavaScript/CatalogJavaScript.htm
http://www.java2s.com/Tutorial/JavaScript/CatalogJavaScript.htm
http://www.java2s.com/Code/JavaScriptReference/CatalogJavaScriptReference.htm
http://www.java2s.com/Code/HTMLCSS/CatalogHTMLCSS.htm
http://www.java2s.com/Code/HTMLCSSReference/CatalogHTMLCSSReference.htm
什么叫成熟的框架,HTML和CSS已经在全世界广泛应用了许多年,在JavaScript领域也有成熟的类库和控件库,比如:
http://www.prototypejs.org/
http://www.extjs.com/ 不知道ext又怎么踩着gfw尾巴了,链接被重置,友情提示,请准备好穿墙工具查看
http://jquery.com/
如果上面的那些还不能让你满足,那么Tin的ppt应该可以喂饱你了,其中甚至推荐了可以使ie6的bug消失的神奇js库和CSS框架:
http://www.haokanbu.com/story/5889/
http://www.haokanbu.com/story/5892/
如果你觉得Flex的开发工具非常好,相对于Flex Builder我们也有这些开发工具(虽然他们也支持Flex):
http://www.aptana.com/
http://www.jetbrains.com/idea/features/javascript_editor.html
有上面的这些东西辅助,基本的项目我们都可以搞定,为什么要选择Flex呢?而且根据我的开发经验Flex有下面几个缺点:
- Flex编译出的程序过于庞大,什么都不做都有几百K,如果加入一个字库的话更是会有上M的大小,虽然现在采用了RSL的方式,解决了一些尴尬局面,但是也不能改变其无法广泛使用在广域网上的境地。
- Flex的编译速度慢,相传全部用as而不使用mxml可以提高编译速度(可问题出来了,那我的Flex操作性就变差了,跟Ajax有啥区别)
- 如果选择AIR,那就不能利用公司现有的web资源,比如一些activex控件、applet等,需要重新开发。说句题外话,当你不得不调用这些本地相关的玩意时,从一定程度上影响了他的跨平台的能力。
既然这样,Flex这种玩意还有啥选择的必要吗?
休息。。。。。。