Dojo1.0.2,Ext2.0.1,GWT1.4,Prototype 1.5.1,JQuery 1.2.3,MooTools 1.2
Ajax Framework分类:
javascript底层封装,自由度大,具有基础的Widget组件 Prototype 1.5.1,JQuery 1.2.3,MooTools 1.2; 面向用户的Widget开发,不需要太多编写 Ext2.0.1 ; 完整,成熟的整套框架 Dojo1.0.2,GWT1.4,SmartClient
优缺点分析:
优点:js文件占用小,开发由开发人员控制,可扩展性大 缺点:需要较长的开发周期,开发人员有相当的经验 优点:丰富,美观的UI Widget设计,扩展CSS改变风格 缺点:自定义Widget编写 优点:从底层封装,到UI设计都有不错的实现 缺点:框架过于庞大,掌握时间较长
项目适用性分析:
过于底层,需要相当的经验及人力; Ext2.0.1画面可称为Perfact,是所有Ajax Framework中最炫的,常用功能相当齐全,在Widget过多时会出现性能瓶颈问题 Demo:http://www.dojochina.com/book/ext/examples/index.html ; SmartClient:原本是商业项目,去年11月开源,丰富的Widget和Demo
Demo:http://www.smartclient.com/#_Welcome ; Dojo1.0.2:时间最长久的Ajax框架,从UI Widget到图表,底层到高层一 应俱全 Demo:http://www.dojochina.com/dojo/demos/demoEngine.html ;GWT1.4:适用于单一Html,功能全由Ajax实现的应用 e.g. GMail , Google Map Demo:http://code.google.com/webtoolkit/examples/ ; GWT1.4:若在多页面跳转项目中使用,会产生大量的文件(1个html至少产生11个必需文件,不利于后期文件系统管理) ; SmartClient:具有丰富的UI设计和成熟的框架体系,但由于过去作为商业应用,于去年11月刚刚开源,在社会上缺乏使用基础,文档除了官方提供外无他
性能分析:
SlickSpeed
http://mootools.net/slickspeed/
selectors
Dojo 1.0.2
JQuery 1.2.3
MooTools 1.2beta2
Prototype 1.6.0.2
IE
230
353
795
2615
Firefox
164
255
139
252
http://extjs.com/playpen/slickspeed/#
selectors
Prototype 1.5.1
jQuery 1.1.3.1
MooTools 1.2 dev
ext 1.1rc1
dojo query
IE
1076
440
831
179
403
Firefox
88
291
116
212
233
Ext性能瓶颈问题:
过去放弃Ext是由于Ext在处理大量控件,诸如数据表格阵列时性能堪忧。
测试案例:
加载数据量 共耗时(秒) 直接调用Action返回XML耗时(秒)
20 2 <1
200 10 2
700 20 8
1400 40 17
其实所有Ajax Framework对于大量Grid都会出现诸如Ext性能问题,Ext比较突出的原因,我认为是因为它做得太漂亮了,造成了div层迭代过多。
Web设计中放弃table转而使用div+css的架构,原因就在于迭代table对于客户端的运行效率是个噩梦,如果使用过多的div虽然不至于产生table迭代当机的可能,但相当慢是必然的。