Bootstrap:
Bootstrap(http://www.bootcss.com)是目前桌面端最为流行的开发框架,一经 Twitter 推出,势不可挡。Bootstrap 主要针对桌面端市场,Bootstrap3 提出移动优先,不过目前桌面端依然还是 Bootstrap 的主要目标市场。Bootstrap 主要基于 jQuery 进行 JavaScript 处理,支持 LESS 来做 CSS 的扩展。如果想要在 Bootstrap 框架中使用 Sass,则需要通过 Bootstrap-Sass(https://github.com/thomas-mcdonald/bootstrap-sass)项目增加兼容。Bootstrap 框架在布局、版式、控件、特效方面都非常让人满意,都预置了丰富的效果,极大方便了用户开发。在风格设置方面,还需要用户在下载时手动设置,可配置粒度非常细,相应也比较繁琐,不太直观,需要对 Bootstrap 非常熟悉配置起来才能得心应手。
在浏览器兼容性方面,目前 Firefox, Chrome, Opera, Safari, IE8+等主流浏览器 Bootstrap 都提供支持。但是在 IE 支持方面略显短板,对 IE6 和 IE7 支持都不是特别理想。在 Bootstrap3 中甚至放弃了对 IE6、IE7 的支持。不过在国内,根据 CNZZ 的统计,目前 IE 的占有率仍然达到 46.98%,同时大量国内浏览器也是采用 IE 内核。这让我们在使用 Bootstrap 的时候总是有所顾忌。在 Bootstrap2 上面,可以通过 BSIE 项目增加对 IE6 的支持,但是也不能支持全部效果。
在框架扩展方面,随着 Bootstrap 的广泛使用,扩展插件和组件也非常丰富,涉及显示组件、兼容性、图表库等各个方面。
jQuery UI
jQuery UI(http://jqueryui.com/)是 jQuery 项目组中对桌面端的扩展,包括了丰富的控件和特效,与 jQuery 无缝兼容。同时,jQuery UI 中预置了多种风格供用户选择,避免了千篇一律。如果您对预置的风格不满意,还可以通过 jQuery UI 的可视化界面,自助对 jQuery UI 的显示效果进行配置,非常方便,够高端大气上档次。
jQuery Mobile
jQuery Mobile (http://jquerymobile.com)是 jQuery 项目对移动端的扩展,目前支持 iOS, Android, Windows Phone, Black Berry 等主流平台。具体支持情况可以参见http://jquerymobile.com/gbs/。另外 jQuery Mobile 在布局,控件和特效方面都很慷慨。在风格方面,与 jQuery UI 类似,除了预置的风格效果之外,还支持用户可视化配置的效果。
可圈可点的是,jQuery Mobile 还与 Codiqa 无缝连接,用户可以直接通过拖拽实现对界面的设计,以及代码的生成。
Sencha Ext JS
Sencha Ext JS(http://www.sencha.com/products/extjs)是 Sencha 基于 Ext JS 开发的前端框架,内容极其丰富,控件、特效等支持非常非常丰富,表格、图画、报告、布局、甚至数据连接,无所不包。只有您想不到,没有它办不到。基于 Sass 和 Compass,使得用户对格式的修改和特效制作更加方便。此外,Sencha 有丰富的产品线,Sencha Desktop Packager 可以让您的应用拥有桌面应用的效果, Sencha Animator 基于 CSS3 更加方便用户对特效的制作,不光支持桌面端,移动端更是不在话下。在 Sencha 看来,用 Animator 做游戏都是轻松拿下。Sencha Space 是基于 HTML5,提供制作跨平台应用的利器。同时 Sencha Ext JS 对主流浏览器的支持也非常理想。
Sencha Ext JS 有着耀眼的光辉,但是光芒背后总归有点阴影。除了之前提到的 Ext JS 太过重量级之外,商业化是 Sencha 的另一把利剑。帮助 Sencha 披荆斩棘之时,也把大把的码农砍在马下。Sencha 规定,凡是商业化的应用,都需要付费。另外,Sencha 的辅助产品也全部收费,否则只能是试用版。这里的辅助产品,其实包括了上面提到的所有产品。
Sencha Touch
Sencha Touch(http://www.sencha.com/products/touch)是 Sencha 面向移动端的开发框架,基于 HTML5 技术,保证了对大多数移动平台的支持。Sencha Touch 包括丰富的布局,控件和特效。并且 Sencha Touch 对响应式支持的很好,在不同设备上,甚至在横屏和竖屏时都会显示不同的效果。这种效果是 Sencha Touch 控件自适应的。Sencha Touch 也实现了对大多数移动设备的支持。Sencha Architect 是对移动端的可视化编辑工具,有着不朽的效果,但也有着不菲的身价。
同时 Sencha Touch 也支持混合式 App 创建,也即是基于 Web 技术,配合 PhoneGap (http://phonegap.com/)或者 Cordova(http://cordova.apache.org/)之类的工具,就可以构建移动应用。Sencha Touch、jQuery Mobile、Foundation 这些前端框架负责界面和效果的编写,PhoneGap、Cordova 框架则允许通过 JavaScript 和其他接口对手机设备的调用,开创了新的移动端开发模式,真正实现了移动端的跨平台开发。