仅仅几年前,运用 JavaScript 开发Mobile使用顺序还只是乖僻的试验,无需运用 Java 和 Object C 便可创立 iOS 和 Android 使用顺序的设法仿佛吸引着非常多 web 开发者。如今呈现了大量的框架,使我们只运用 web 技术就能够创立Mobile使用,而且用户体验和以往用原生言语开发的使用差未几。
混杂使用顺序只是一个通俗的Mobile优化的网站,用CSS,HTML和JavaScript编写,在webview上显示(它根本上是一个精简的Web阅读器)。如许做的益处是,只需求写一个使用顺序,在大大多数状况下,不必修正就能够在 Android,iOS 和 Windows Phone 上运转。本文列出的大大多数框架都是用Cordova 或 PhoneGap 完成的,它们架起了由 JavaScript 通往装备 API 的桥梁。
本文将对用于构建混杂和原生Mobile使用顺序的最盛行的 JavaScript 框架实行比拟。转动本文的最初可以看到后果。
Ionic
Ionic在我们列出来的这些框架外面是最盛行的,可能对非常多开发者来讲是首选。你可以用框架中的CSS 完成有 native 作风的设计,不外相对运用完好的 Ionic,更建议搭配 AngularJS 一同开发。运用 Ionic 的一大益处是号令行的交互界面,有非常多诱人的功用,包含集成的仿真器金额基于Cordova 的 app 打包器。
正面:
预置的组件
弱小的社区
号令行交行界面,有着非常多有效的功用
负面:
庞杂的开发需求了解AngularJS
Onsen UI
这是一个开源的框架,可以经过组合 native 作风的组件来开发 app。它用起来十分容易,可以用AngularJS 一同开发,也能够不必。有着完美的文档,包括了大量例子和结构,掩盖了最多见的 app 类型。Onsen UI 的一个缺乏是今朝只宣布了一个 iOS 主题,不外下一个版本许诺会推出 Material Design(谷歌推出的一种设计作风)的支撑。
正面:
预置的组件
优良的文档,包括大量例子
负面:
未包括PhoneGap/CordovaTools,不外可以支撑
暂不支撑Material Design作风
Framework 7
Framework 7比拟酷的地方在于它完整是框架有关的(没有像Angular或许React那样的内部依靠),可是确仍然可让app在组件和动画方面有着native的作风和体验。开发者只需求会HTML, CSS和JavaScript就能够开发使用,而不必把代码搞得很庞杂。Framework 7其实不包括任何用于仿真或许打包的Tools,,所以你需求将其与Cordova或许PhoneGap一同运用。
正面:
容易易用,只依靠HTML, CSS和JavaScript
功能不错
可以和恣意JavaScript框架联合运用
负面:
未包括PhoneGap/CordovaTools,不外可以支撑
React Native
正如项目标称号流露的那样,React Native的目标是构建真正native的使用。而不是构建在Webview里运转的混杂形式的使用。开发完整由JavaScript和React来完成。这个框架不太合适web开发的老手,不外其面前有一个宏大的社区,在各个方面都可认为你供给支撑。比来这个框架还宣布了Android版,如许你就能够真正完成跨平台的使用开发了。
正面:
Native级此外功能
宏大的社区支撑
负面:
峻峭的进修曲线
今朝开发Tools只支撑OS X
jQuery Mobile
它是一切Mobile框架的爷爷, jQuery Mobile 的目标不是让 apps 的外观像 Android 或 iOS。而是为了协助开发可以在一切Mobile阅读器(包含老旧的 Windows Phone,Blackberry 和 Symbian)上杰出运转的 web apps。因而,它长短常轻量级的,只依靠 jQuery,很轻易学会,同时还供给了杰出的触摸辨认和对 PhoneGap/Cordova 的支撑。
长处:
支撑普遍的Mobile阅读器
容易易用
缺陷:
款式陈腐,既不像 iOS 也不像 Android
不包括 PhoneGap/Cordova builder,但支撑
NativeScript
Native script 的最大特色是,用 TypeScript 言语编写 app 的功用,只需求编写一次,然后它可以针对分歧的操作系统(包含 Android,iOS 和 Windows Phone)发生对应的可履行代码,打包后,使用是按原生顺序的方法运转的,并没有翻开和运转阅读器。运用该框架的确需求一些编程技能,但它详实深化的文档补偿了这方面的缺乏。
长处:
“编写一次,四处运用” 的方法
弱小的文档
Cons:
峻峭的进修曲线
较小的社区
Famous
Famous切入web和Mobile开发的方法有点异乎寻常。它运用WebGL把你的HTML的DOM树组合在一同,把一切的内容在一个canvas里显示,有点相似HTML游戏引擎做的那样。这类共同的技术可让框架在60 fps的速度下运转app,这曾经和大部分native的app一样流利了。惋惜的是,这个项目如今不再活泼了,也没有适宜的文档可供参考。
正面:
Native的功能
背面:
开发根本停止
文档不全
社区不健全
框架 | Native体验 | 依靠 | 社区 | 文档 | Tools |
---|---|---|---|---|---|
Ionic | 7/10 | AngularJS (可选) | 9/10 | 8/10 | 弱小的 CLI, Ionic SDK |
Onsen UI | 6/10 | AngularJS (可选) | 4/10 | 9/10 | Monaca Cloud IDE (有收费计划) |
Framework 7 | 8/10 | 只需HTML, CSS 和JS | 6/10 | 8/10 | 无 |
React Native | 8/10 | React | 8/10 | 5/10 | Chrom的扩大ToolsReact Developer Tools |
jQuery Mobile | 3/10 | jQuery | 8/10 | 5/10 | 无 |
Native Script | 8/10 | TypeScript | 5/10 | 9/10 | 收费的 CLI, 其他的付费可选 |
Famous | 7/10 | WebGL, AngularJS | 3/10 | 5/10 | 无 |
没有真正完满的框架 – 每一个都有本人的长处和缺陷,用哪一个取决于你要用他们干甚么。
我们盼望这个疾速的比拟能对你有协助!假如你对列内外的或许相似的框架有一些经历,无妨给我们留言,分享你对混杂使用开发的见解!
本文中的一切译文仅用于进修和交换目标,转载请务必注明文章译者、出处、和本文链接。 2KB翻译任务按照 CC 协议,假如我们的任务有进犯到您的权益,请实时联络我们。2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务