Dr. Dobbs网站最近刊登了一篇关于如何选择Ajax框架的案例分析,取自T. Rowe Price的一个开发团队。该团队评估了在他们的下一代应用中可选用的几个热门Ajax框架:
- Dojo 0.3.1(dojotoolkit.org);
- Prototype和Scriptaculous 1.4(www.prototypejs.org和script.aculo.us);
- Direct Web Reporting 1.0(getahead.org/dwr);
- Yahoo! User Interface Library 0.11.1(developer.yahoo.com/yui);
- Google Web Toolkit 1.0(code.google.com/webtoolkit)。
经过最初考察之后,GWT就被从名单上剔除了,因为和团队原有的UI和后台开发人员分配不符,而且必须学习一套基于Java的新API。DWR也被排出在考虑范围之内,因为需要给T. Rowe Price使用的Websphere应用服务器打补丁。于是,接下来的考察对象就只剩下Prototype、Dojo和Yahoo UI了。
随后,文章比较了三个框架各自如何实现创建一个标签型Ajax Widget和一个带标题栏的动态“Hub”Widget。为了实现所需要的标签Widget功能,三个框架都需要进行一定的定制工作,但Dojo已经直接附带了最为接近的功能。随后,该团队又考察了加载时间:
……所使用的框架代码量级越小,性能衰减的可能性就越小。YUI完全压缩后的JavaScript文件需要22K,而Prototype是32K,明显比单独定制的Dojo JavaScript文件(220K)要小很多。这三个框架在高速网络连接的情况下性能都很不错;然而,YUI和Prototypes/Scriptaculous在56K的拨号上网连接下性能要高一些……
最后,开发团队考察了开发的总体难易程度。得出的结论是Dojo提供了更多的特性和Widget,但要进行定制难度就显得很比较大,因为需要更改的文件数量很多。最终,他们选择了Yahoo UI,原因是它的代码提供了详尽的文档,并且在Yahoo网站上还有详细的入门手册。
查看英文原文:Picking an Ajax Framework