itSeven 2015-06-11
本次评比的目标是以移动Web App开发为基础的JS框架,会有意的排除部分不适用于移动Web App开发的JS框架,如 jQuery、ExtJS等。希望通过这次评比结果,能找到最合适你移动Web App应用开发的JS框架。
由于JS框架在功能、特性和应用领域不同,所以,我将现在的主流JS框架分成四个大类:
本篇文章主要对Mobilie Javascript Library进行对比,针对移动JS框架中的两类特性:
作为参考指标,最后分析总结。
Mobile Javascript Library 包含两种类型的JS库:UI框架、类库
以我们接触得比较多的两种Desktop Javascript Library为例,ExtJS属于UI框架,而jQuery就是一个类库。
下面,通过比较Mobile Javascript Library的特性,找到一个最适合的JS框架帮助你创建移动WebApp应用。
Sencha Touch
优点
• 用户体验最接近Native App, 具有整体的UI组件、布局解决方案;
• 统一的编程代码结构和要求,良好组织的代码易于维护;
• 继承ExtJS 4的应用程序MVC架构;
• 完善的API文档,示例;活跃的社区,网上有大量的文档书籍帮助学习;
缺点
• 兼容性差,仅支持webkit内核的浏览器;
• 框架比较重量级,学习成本比较高;
• 商业化使用有版权问题;
jQuery Mobile
优点
• 跨浏览器兼容性最好,几乎兼容所有的平台和浏览器;
• 入门简单,语法简洁,编码灵活,一些简单的应用直接用HTML既可实现,无需Javascript;
• 开源插件与第三方扩展网上资源丰富;
• 完善的API文档,示例;活跃的社区,网上有大量的文档书籍帮助学习;
缺点
• jQuery Mobile对代码没有特定的要求,后期维护难度较大;
Zepto
优点
• 学习成本低,Zepto保持了与jQuery几乎一样的功能,使用gzip压缩只有5-10k;
缺点
• Zepto不支持Windows Phone下的IE ;
Jo HTML5 Mobile App Framework
优点
• 没有什么突出的优点,感觉是与Sencha非常相似的一个框架;
缺点
• 兼容性相比Sencha Touch稍好一点,但是也不支持WP IE、Firefox、Opera;
• 网上文档、资料太少,中文资料几乎没有,英文资料也非常少;
Wink Toolkit
优点
• Wink的核心库是轻量级的,支持AMD规范的模块化加载,功能接口相比Zepto更丰富;
• 提供很酷的2D、3D效果UI组件;
缺点
• 组件对 Android的支持程度不好,3D组件无法使用 ;
ChocolateChip-UI
优点
• 组件样式模仿iOS界面,用户体验与iOS非常相似;
缺点
• 兼容性差,仅支持webkit内核的浏览器;
• API文档太简单,网上资料非常少,社区没有活力;
• 组件扩展难度高,要熟悉WMXL标签语法;
XUI
优点
• XUI有多个版本,跨浏览器支持的代码都被剥离,使用GZIP压缩之后最小只有4.2kb。学习成本低,与jQuery相似的链式语法。
缺点
• XUI的优点也是缺点,有的Web App应用可能并不希望将跨浏览器支持拆分为多个版本使用;
Dojo Mobile
优点
• Dojo本身有很多优秀的设计,面向对象、MVC、JS模块化加载;
• 完善的API文档,示例;活跃的社区,网上有大量的文档书籍帮助学习;
缺点
• Dojo Mobile需要依赖完整的dojo库,压缩之后的代码140k,gzip压缩之后在40k;
• 兼容性差,仅支持webkit内核的浏览器;
• 学习成本高;
想要最好的用户体验Sencha Touch会是最好的选择,想要最好的兼容性应当选择jQuery Mobile,如果有相当强大的UI团队,Zepto、XUI会是更好的选择,适合的才是最好的。
对于我个人而言,我比较青睐Zepto这种小巧灵活的类库,能让我有最大的自由发挥空间。我在面向对象、UI组件、MVC方面拥有多年的开发经验,有能力去设计、编写 UI框架,当然,这些都离不开我的UI团队的支持。虽然Zepto不兼容IE,但是这在可接受的范围之内, 如果未来官方不能支持IE 的话,我的团队有足够的实力与时间实现Zepto对IE的兼容 。
选择一个适合的移动JS框架只是开始,移动WebApp开发才是真正的挑战,如何解决跨平台的各种兼容问题?如何保证基于HTML5的WebApp的稳定性?如何平衡动画效果的性能问题?等等。
下载Sencha Touch源代码、阅读文档并加入社区。
下载jQuery Mobile源代码、阅读文档并加入社区。
下载Zepto源代码、阅读文档。
下载Jo HTML5 Mobile App Framework源代码、阅读文档并加入社区。
下载Wink Toolkit (http://www.winktoolkit.org/)源代码、阅读文档并加入社区。
下载ChocolateChip-UI源代码、阅读文档并加入社区。
下载XUI源代码、阅读文档 。
The Top 10 Javascript MVC Frameworks Reviewed
Web App 被看衰,Hybrid App 才是新王道
Sencha Touch or jQuery Mobile? – Read This Before You Make a Decision
5个jQuery的备选轻量级移动客户端开发(Mobile development)类库
使用 Dojo Mobile 为 iOS 智能终端开发 Native-like Web 应用
转自:http://zhangdaiping.iteye.com