国内外主流前端开发框架技术对比
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
同时 Sencha Touch 也支持混合式 App 创建,也即是基于 Web 技术,配合 PhoneGap 之类的工具,就可以构建移动应用。Sencha Touch、jQuery Mobile、 Foundation 这些前端框架负责界面和效果的编写,PhoneGap、Cordova 框架则 允许通过 JavaScript 和其他接口对手机设备的调用,开创了新的移动端开发模 式,真正实现了移动端的跨平台开发。
学习难度低
效率高,速度流畅 支持多点触控 优点 快速图形 API 流畅动画 直接操作内置部件
更新发布快速,开发快。 通吃各种平台 Html5技术已经发布,有很强的 上升势头,已经获得越来越多的 支持。 已经有不少的基于 html 的应用
Baidu Nhomakorabea
不跨平台
操作上和原生 API 在效率上还
开发难度高,发布可能要借助 有一定差距。
jQuery Mobile
jQuery Mobile 是 jQuery 项目对移动端的扩展,目前支持 iOS, Android, Windows Phone, Black Berry 等主流平台。另外 jQuery Mobile 在布局,控件 和特效方面都很慷慨。在风格方面,与 jQuery UI 类似,除了预置的风格效果 之外,还支持用户可视化配置的效果。jQuery Mobile 还与 Codiqa 无缝连接, 用户可以直接通过拖拽实现对界面的设计,以及代码的生成。
Sencha Ext JS 有着耀眼的光辉,但是光芒背后总归有点阴影。除了之前提 到的 Ext JS 太过重量级之外,商业化是 Sencha 的另一把利剑。帮助 Sencha 披荆斩棘之时,也把大把的码农砍在马下。Sencha 规定,凡是商业化的应用, 都需要付费。另外,Sencha 的辅助产品也全部收费,否则只能是试用版。
二、移动应用开发技术对比
应用程序 特性
原生
图形
原生 API
HTML5 HTML、Canvas 和 SVG
混合 HTML、Canvas 和 SVG
性能 原生外观 和感觉
分发 设备访问 摄像头
通知 联系人和
日历
快速 原生 应用程序商店
有 有 有
离线存储
安全的文件存储
地理位置 手势 滑动 缩放 连接
有
有 有 在线和离线
一、国内外主流前端开发框架技术对比
框架名称
主要 平台
基础技术
布局
CSS 控件 特效 风格设 置
Ratchet
桌面端 jQuery, LESS 丰富 丰 丰富 丰富 手动配
富
置
移动端 HTML5,css
简单 中 一般 一般 简单 等
桌面端 jQuery
-
- 丰富 丰富 预置/可
视化配
置
移动端 jQuery
jQuery UI
jQuery UI 是 jQuery 项目组中对桌面端的扩展,包括了丰富的控件和特效, 与 jQuery 无缝兼容。同时,jQuery UI 中预置了多种风格供用户选择,避免了 千篇一律。如果您对预置的风格不满意,还可以通过 jQuery UI 的可视化界面, 自助对 jQuery UI 的显示效果进行配置,非常方便,够高端大气上档次。
Sencha Touch
Sencha Touch 是 Sencha 面向移动端的开发框架,基于 HTML5 技术,保证 了对大多数移动平台的支持。Sencha Touch 包括丰富的布局,控件和特效。并 且 Sencha Touch 对响应式支持的很好,在不同设备上,甚至在横屏和竖屏时都 会显示不同的效果。这种效果是 Sencha Touch 控件自适应的。Sencha Touch 也 实现了对大多数移动设备的支持。Sencha Architect 是对移动端的可视化编辑 工具,有着不朽的效果,但也有着不菲的身价。
Ratchet
Ratchet 最初是 Twitter 的一套面向 iOS 原生应用程序的 HTML/CSS 原型。在 看到这些原型对于开发过程多么重要之后,团队决定将其作为一个移动应用程序 原型设计工具开源。团队很快就清楚地认识到,Ratchet 不仅非常适合构建移动 应用程序原型,而且还非常适合完备的移动应用程序。Ratchet 并没有试图在平 台或浏览器方面使用 CSS 做任何特别的事。它的目标是保持简洁,那样更容易理 解和实现。
JavaScript 处理,支持 LESS 来做 CSS 的扩展。Bootstrap 框架在布局、版式、 控件、特效方面都非常让人满意,都预置了丰富的效果,极大方便了用户开发。 在风格设置方面,还需要用户在下载时手动设置,可配置粒度非常细,相应也比 较繁琐,不太直观,需要对 Bootstrap 非常熟悉配置起来才能得心应手。在浏 览器兼容性方面,目前 Firefox, Chrome, Opera, Safari, IE8+等主流浏览器 Bootstrap 都提供支持。但是在 IE 支持方面略显短板,对 IE6 和 IE7 支持都 不是特别理想。在 Bootstrap3 中甚至放弃了对 IE6、IE7 的支持。在框架扩展 方面,随着 Bootstrap 的广泛使用,扩展插件和组件也非常丰富,涉及显示组 件、兼容性、图表库等各个方面。
开发技能 ObjectiveC 和 Java
学习难度
学习难度高
慢速 模拟
Web
慢速 模拟 应用程序商店
无 无 无
共享式 SQL 有
有 有
有
安全的文件系统和共 享式 SQL 有
有
有
无
有
主要是在线
在线和离线
HTML5、CSS 和 JavaScript
HTML5、CSS 和 JavaScript
学习难度低
序的容器。
在线工具
https://jetstrap.com/ http://www.bootcss.com/p/layoutit/
第三方商店
访问原生设备访问功能、会话管
Android 的版本分裂,碎片化,理、安全离线存储有很大局限
缺点 增加开发难度。
性。
无法被搜索引擎搜索。
无法获得原生应用程序那样熟 悉的外观感觉,也无法使用熟悉 的组合手势。
短期技术问题,本地应用必然还会是主流,但是随着 HTML5 的第三 方开发工具出现和普及度增加还是完全有可能替代本地应用的,但是 在需要硬件渲染的游戏上,还有很长的道路要走。技术上可考虑原生 APP+WEB APP 结合的方式出现,功能互补,同时体现 WEB 的轻量与快 速发布优势,混合开发集原生和 HTML5 两者的优点(及缺点)。我们定 义 的 混 合 应 用 程 序 是 一 种 Web 应 用 程 序 , 主 要 使 用 HTML5 和 JavaScript 构建而成,然后封装在细薄的原生容器里面,可通过容 器来访问原生平台功能。PhoneGap 是最流行的构建混合移动应用程
jQuery 是目前用 的最 多的前端 JavaScript 类库,据 初步统计 ,目前 jQuery 的占有率已经超过 46%,它算是比较轻量级的类库,对 DOM 的操作也比 较方便到位,支持的效果和控件也很多。同时,基于 jQuery 有很多扩展项目, 包括 jQuery UI(jQuery 支持的一些控件和效果框架)、jQuery Mobile(移动端 的 jQuery 框架)、QUnit(JavaScript 的测试框架)、Sizzle(CSS 的选择引擎)。 这些补充使得 jQuery 框架更加完整,更令人兴奋的是,这些扩展与目前的框架 基本都是兼容的,可以交叉使用,使得前端开发更加丰富。s
Sencha Ext JS
Sencha Ext JS 是 Sencha 基于 Ext JS 开发的前端框架,内容极其丰富,
控件、特效等支持非常非常丰富,表格、图画、报告、布局、甚至数据连接,无 所不包。只有您想不到,没有它办不到。基于 Sass 和 Compass,使得用户对格 式的修改和特效制作更加方便。此外,Sencha 有丰富的产品线,Sencha Desktop Packager 可以让您的应用拥有桌面应用的效果, Sencha Animator 基于 CSS3 更加方便用户对特效的制作,不光支持桌面端,移动端更是不在话下。在 Sencha 看来,用 Animator 做游戏都是轻松拿下。Sencha Space 是基于 HTML5,提供 制作跨平台应用的利器。同时 Sencha Ext JS 对主流浏览器的支持也非常理想。
Ext 是 Sencha 公司推崇的 JavaScript 类库,相比 jQuery,Ext JS 更重 量级,动辄数兆的文件,使得 Ext 在外网使用的时候会顾虑很多。但是,另一 方面,在 Ext JS 庞大的文件背后是 Ext JS 强大的功能。Ext JS 的控件和功 能可以说强大和华丽到了让人发指的程度。图表、菜单、特效,Ext JS 的控件 库非常丰富,同时它的交互也非常强大,独立靠 Ext JS 几乎就可以取代控制层 完成于客户的交互。强大的功能,丰富的控件库,华丽的效果也使得 Ext JS 成 为内网开发利器。
丰富
- 丰富 丰富 预置/可 视化配 置
桌面端 Ext JS, Sass 丰富
- 极丰 极丰 预置 富富
移动端
HTML5
丰富 - 丰富 丰富 -
Boostrap
Bootstrap 是目前桌面端最为流行的开发框架,一经推出,势不可挡。 Boostrap 来自于 Twitter,是一个基于 HTML,CSS,JAVASCRIPT 的时尚的、直观 的、强大的流行前端框架及交互组件集,可用于快速,简单构建你的网站。 Bootstrap 主要针对桌面端市场,Bootstrap3 提出移动优先,不过目前桌面端 依然还是 Bootstrap 的主要目标市场。 Bootstrap 主要基于 jQuery 进行
Bootstrap 拥有以下特性: ➢ 适应各种技术水平 ➢ 跨设备,跨浏览器 ➢ 12 列栅格布局 ➢ 响应式设计 ➢ 样式化的文档 ➢ 不断完善的库 ➢ 定制的 jQuery 插件:Bootstrap 提供了定制的 jQuery 内置插件。 ➢ 用 LESS 构建 ➢ 支持 HTML5 标签和语法 ➢ 支持 CSS3 ➢ 免费开源
学习难度低
效率高,速度流畅 支持多点触控 优点 快速图形 API 流畅动画 直接操作内置部件
更新发布快速,开发快。 通吃各种平台 Html5技术已经发布,有很强的 上升势头,已经获得越来越多的 支持。 已经有不少的基于 html 的应用
Baidu Nhomakorabea
不跨平台
操作上和原生 API 在效率上还
开发难度高,发布可能要借助 有一定差距。
jQuery Mobile
jQuery Mobile 是 jQuery 项目对移动端的扩展,目前支持 iOS, Android, Windows Phone, Black Berry 等主流平台。另外 jQuery Mobile 在布局,控件 和特效方面都很慷慨。在风格方面,与 jQuery UI 类似,除了预置的风格效果 之外,还支持用户可视化配置的效果。jQuery Mobile 还与 Codiqa 无缝连接, 用户可以直接通过拖拽实现对界面的设计,以及代码的生成。
Sencha Ext JS 有着耀眼的光辉,但是光芒背后总归有点阴影。除了之前提 到的 Ext JS 太过重量级之外,商业化是 Sencha 的另一把利剑。帮助 Sencha 披荆斩棘之时,也把大把的码农砍在马下。Sencha 规定,凡是商业化的应用, 都需要付费。另外,Sencha 的辅助产品也全部收费,否则只能是试用版。
二、移动应用开发技术对比
应用程序 特性
原生
图形
原生 API
HTML5 HTML、Canvas 和 SVG
混合 HTML、Canvas 和 SVG
性能 原生外观 和感觉
分发 设备访问 摄像头
通知 联系人和
日历
快速 原生 应用程序商店
有 有 有
离线存储
安全的文件存储
地理位置 手势 滑动 缩放 连接
有
有 有 在线和离线
一、国内外主流前端开发框架技术对比
框架名称
主要 平台
基础技术
布局
CSS 控件 特效 风格设 置
Ratchet
桌面端 jQuery, LESS 丰富 丰 丰富 丰富 手动配
富
置
移动端 HTML5,css
简单 中 一般 一般 简单 等
桌面端 jQuery
-
- 丰富 丰富 预置/可
视化配
置
移动端 jQuery
jQuery UI
jQuery UI 是 jQuery 项目组中对桌面端的扩展,包括了丰富的控件和特效, 与 jQuery 无缝兼容。同时,jQuery UI 中预置了多种风格供用户选择,避免了 千篇一律。如果您对预置的风格不满意,还可以通过 jQuery UI 的可视化界面, 自助对 jQuery UI 的显示效果进行配置,非常方便,够高端大气上档次。
Sencha Touch
Sencha Touch 是 Sencha 面向移动端的开发框架,基于 HTML5 技术,保证 了对大多数移动平台的支持。Sencha Touch 包括丰富的布局,控件和特效。并 且 Sencha Touch 对响应式支持的很好,在不同设备上,甚至在横屏和竖屏时都 会显示不同的效果。这种效果是 Sencha Touch 控件自适应的。Sencha Touch 也 实现了对大多数移动设备的支持。Sencha Architect 是对移动端的可视化编辑 工具,有着不朽的效果,但也有着不菲的身价。
Ratchet
Ratchet 最初是 Twitter 的一套面向 iOS 原生应用程序的 HTML/CSS 原型。在 看到这些原型对于开发过程多么重要之后,团队决定将其作为一个移动应用程序 原型设计工具开源。团队很快就清楚地认识到,Ratchet 不仅非常适合构建移动 应用程序原型,而且还非常适合完备的移动应用程序。Ratchet 并没有试图在平 台或浏览器方面使用 CSS 做任何特别的事。它的目标是保持简洁,那样更容易理 解和实现。
JavaScript 处理,支持 LESS 来做 CSS 的扩展。Bootstrap 框架在布局、版式、 控件、特效方面都非常让人满意,都预置了丰富的效果,极大方便了用户开发。 在风格设置方面,还需要用户在下载时手动设置,可配置粒度非常细,相应也比 较繁琐,不太直观,需要对 Bootstrap 非常熟悉配置起来才能得心应手。在浏 览器兼容性方面,目前 Firefox, Chrome, Opera, Safari, IE8+等主流浏览器 Bootstrap 都提供支持。但是在 IE 支持方面略显短板,对 IE6 和 IE7 支持都 不是特别理想。在 Bootstrap3 中甚至放弃了对 IE6、IE7 的支持。在框架扩展 方面,随着 Bootstrap 的广泛使用,扩展插件和组件也非常丰富,涉及显示组 件、兼容性、图表库等各个方面。
开发技能 ObjectiveC 和 Java
学习难度
学习难度高
慢速 模拟
Web
慢速 模拟 应用程序商店
无 无 无
共享式 SQL 有
有 有
有
安全的文件系统和共 享式 SQL 有
有
有
无
有
主要是在线
在线和离线
HTML5、CSS 和 JavaScript
HTML5、CSS 和 JavaScript
学习难度低
序的容器。
在线工具
https://jetstrap.com/ http://www.bootcss.com/p/layoutit/
第三方商店
访问原生设备访问功能、会话管
Android 的版本分裂,碎片化,理、安全离线存储有很大局限
缺点 增加开发难度。
性。
无法被搜索引擎搜索。
无法获得原生应用程序那样熟 悉的外观感觉,也无法使用熟悉 的组合手势。
短期技术问题,本地应用必然还会是主流,但是随着 HTML5 的第三 方开发工具出现和普及度增加还是完全有可能替代本地应用的,但是 在需要硬件渲染的游戏上,还有很长的道路要走。技术上可考虑原生 APP+WEB APP 结合的方式出现,功能互补,同时体现 WEB 的轻量与快 速发布优势,混合开发集原生和 HTML5 两者的优点(及缺点)。我们定 义 的 混 合 应 用 程 序 是 一 种 Web 应 用 程 序 , 主 要 使 用 HTML5 和 JavaScript 构建而成,然后封装在细薄的原生容器里面,可通过容 器来访问原生平台功能。PhoneGap 是最流行的构建混合移动应用程
jQuery 是目前用 的最 多的前端 JavaScript 类库,据 初步统计 ,目前 jQuery 的占有率已经超过 46%,它算是比较轻量级的类库,对 DOM 的操作也比 较方便到位,支持的效果和控件也很多。同时,基于 jQuery 有很多扩展项目, 包括 jQuery UI(jQuery 支持的一些控件和效果框架)、jQuery Mobile(移动端 的 jQuery 框架)、QUnit(JavaScript 的测试框架)、Sizzle(CSS 的选择引擎)。 这些补充使得 jQuery 框架更加完整,更令人兴奋的是,这些扩展与目前的框架 基本都是兼容的,可以交叉使用,使得前端开发更加丰富。s
Sencha Ext JS
Sencha Ext JS 是 Sencha 基于 Ext JS 开发的前端框架,内容极其丰富,
控件、特效等支持非常非常丰富,表格、图画、报告、布局、甚至数据连接,无 所不包。只有您想不到,没有它办不到。基于 Sass 和 Compass,使得用户对格 式的修改和特效制作更加方便。此外,Sencha 有丰富的产品线,Sencha Desktop Packager 可以让您的应用拥有桌面应用的效果, Sencha Animator 基于 CSS3 更加方便用户对特效的制作,不光支持桌面端,移动端更是不在话下。在 Sencha 看来,用 Animator 做游戏都是轻松拿下。Sencha Space 是基于 HTML5,提供 制作跨平台应用的利器。同时 Sencha Ext JS 对主流浏览器的支持也非常理想。
Ext 是 Sencha 公司推崇的 JavaScript 类库,相比 jQuery,Ext JS 更重 量级,动辄数兆的文件,使得 Ext 在外网使用的时候会顾虑很多。但是,另一 方面,在 Ext JS 庞大的文件背后是 Ext JS 强大的功能。Ext JS 的控件和功 能可以说强大和华丽到了让人发指的程度。图表、菜单、特效,Ext JS 的控件 库非常丰富,同时它的交互也非常强大,独立靠 Ext JS 几乎就可以取代控制层 完成于客户的交互。强大的功能,丰富的控件库,华丽的效果也使得 Ext JS 成 为内网开发利器。
丰富
- 丰富 丰富 预置/可 视化配 置
桌面端 Ext JS, Sass 丰富
- 极丰 极丰 预置 富富
移动端
HTML5
丰富 - 丰富 丰富 -
Boostrap
Bootstrap 是目前桌面端最为流行的开发框架,一经推出,势不可挡。 Boostrap 来自于 Twitter,是一个基于 HTML,CSS,JAVASCRIPT 的时尚的、直观 的、强大的流行前端框架及交互组件集,可用于快速,简单构建你的网站。 Bootstrap 主要针对桌面端市场,Bootstrap3 提出移动优先,不过目前桌面端 依然还是 Bootstrap 的主要目标市场。 Bootstrap 主要基于 jQuery 进行
Bootstrap 拥有以下特性: ➢ 适应各种技术水平 ➢ 跨设备,跨浏览器 ➢ 12 列栅格布局 ➢ 响应式设计 ➢ 样式化的文档 ➢ 不断完善的库 ➢ 定制的 jQuery 插件:Bootstrap 提供了定制的 jQuery 内置插件。 ➢ 用 LESS 构建 ➢ 支持 HTML5 标签和语法 ➢ 支持 CSS3 ➢ 免费开源