HTML5开发框架推荐

1、关于html5主流开发框架的优劣对比

     选择什么样的框架,需要以产品原型及特定需求为出发点,择优而用,同时考虑对框架的熟悉程度、开发维护成本以及适用性。

     1.1、Sench Touch

             Sench Touch是最早支持html5技术的web框架。

             优势:它对html5及css3标准支持较为完善,同时也兼容Android & iOS设备,并且API中提供了很多常用的UI组件,

             对数据本地存储、图片圆角、阴影、渐变背景均提供支持(支持情况也取决于浏览器对html5支持情况)。便于快速开发,缩减了适配工作,

             支持与PhoneGap的交互。

             劣势:最好有一定Extjs基础。相对于Sench提供的组件而言页面的DOM结构会有所减少,多组件的拼装需要对API熟练掌握。

             中低端Android手机部分过场特效会有延迟卡顿。

     1.2、JQuery Mobile

             JQuery Mobile的使用为了更好的解决移动端兼容性问题,适合对自定义样式要求不高的产品

             优势:JQuery Mobile可以与JQuery UI 完美结合,易用性强,有一定JQuery开发经验的开发者结合API可以很快投入开发场景。适配性强,支持多平台响应式布局,

             API中提供移动端使用到的特效,灵活的配色方案UI风格统一,css+js具有轻量化的大小,100kb左右。

             劣势:由于需要对页面的元素进行样式渲染,大量对DOM的操作导致第一次页面载入会比较慢。为了满足对浏览器的向下兼容,页面的切换效果等特效存在

             诸多问题,受设配性能影响较大。不适合用于产品设计风格差异较大的项目。

     1.3、JQuery

             优势:提供了成熟封装的Selector,大幅减少开发代码量。提供上千高效插件,从而减少开发成本。支持Ajax及自定义插件扩展,跨平台兼容,版本迭代稳定,文档成熟健全。

             劣势:不能向后兼容,每一个新版本不能完全兼容早期版本。会有一些废弃的Selector。会对开发者的使用造成一定的影响。同页面多插件时容易出现冲突。

     1.4、Zepto.js

             Zepto.js是针对移动设备优化过的更轻量的JQuery

             优势:Zepto.js上手很快,用法基本上与JQuery一致,与JQuery相比最大的优势就是它的大小,压缩后仅有24KB。

             劣势:偏向于移动端的应用,不支持IE。

     1.5、Backbone.js

             Backbone.js是支持单页面式的MVC框架

             优势:无论是web-page还是web-app都可以使用,官网推荐于JQuery结合使用,学习成本低且快速简练。支持模块化开发,可搭配Sea.js一类模块加载器。本身大小不到10kb,

             可以依赖Underscore.js,支持扩展,具有丰富的可扩展接口。可应用于移动端,包括Hybrid App。

             劣势:抽象功能不够强,还有一些需要的功能还没实现。整个框架十分轻量,产出的结果是很多引用文件和模板。Underscore.js文档较为简单。

     1.6、Sea.js

             优势:Sea.js追求简单,自然的代码书写和组织方式,核心特性:简单友好的模块定义规范(遵循CMD规范);自然直观的代码组织方式(依赖的自动加载、配置更简洁清晰),提供

             开发时常用的插件,有助于开发调试与性能优化。

             劣势:代码编写习惯需要遵循CMD标准。打包发布部分需要掌握spm,配置较为复杂,官方推荐使用Grunt发布。

     1.7、PhoneGap

             优势:PhoneGap适用于混合web应用(Hybrid App),针对各大主流平台的兼容性好,基于web技术,使用javascript包装平台的API,便于调用,开发成本低。

             劣势:页面内容复杂的应用运行速度会稍显缓慢。用户体验方便短期内还无法超越原生应用。在某些javascript渲染较慢的设备上,UI反应会有延时。

     1.8、Grunt、FIS

             Grunt、FIS均属于前端项目构建框架

             优势:Grunt基于node.js,通过package.json对项目中所需用到的插件提供依赖关系,与FIS使用类似,官网有详细说明文档。可用于压缩、编译、单元测试、代码检查,从而简化工作。

             劣势:FIS的API说明较为简单,还在迭代完善,目前百度用的比较多,有较为成熟的交流群、社区。

猜你喜欢

转载自heicx.iteye.com/blog/2068029