英文原文地址:http://phonegap.com/blog/2015/03/12/mobile-choices-post1/java
这篇文章是,选择移动App开发策略时面对不一样选择如何综合考虑之系列文章的第一篇。经过各方面的比较,让开发者明白何时什么地方在本身的app里面使用Adobe PhoneGap。react
当咱们搭建一个native,mobile web或者hybrid移动app时,最常考虑的选择以下。web
当说到hybrid的时候,一个很重要的概念要进一步澄清,将hybrid mobile apps分红Web Hybrid和Native Hybrid两种更有意义,也是本篇文章的依照的定义。浏览器
Web hybrid mobile apps主要被包裹在一个webview里面,和一个简单的native容器用来桥接native的API。UI控件也不须要native提供,它只是对native和webview交互的一个简单封装。服务器
Native hybrid mobile apps混合了native控件和一个或多个webview。常见的方案是,native建立navigation和tabbar,主要内容放在各个被包裹的webview里。架构
PhoneGap能够用来建立上面两种类型的hybrid app,而且提供了很强的灵活性去结合native元素来裁剪用户体验,在拥有web的好处的同时尽力得到一个更native的视觉效果和体验。已经很是清楚了,为何愈来愈多的公司选择混合native和web,就是为了以混合的方式同时得到他们二者的好处。app
不少开发者选择native建立navigation和tabbar,将主要的内容放在各个被包裹的webview里,以在保证大范围的用户可以快速使用它们的app的同时,节省大量的时间和成本。此方式也提供了避开App Store审批的麻烦以快速更新的能力。以这种模式,每一个平台只须要一小部分的native基础代码须要维护,并且这小部分代码表明的是app里的固定部分,而不是主要内容,从而更容易管理。框架
一个很受欢迎的项目管理app,Basecamp的创始人,也采用混合开发的方案。他们写过不少质量很高的文章来说解他们的移动app的架构,以及它是如何不断演进出最好的native和hybrid的混合方案。iphone
另外一种移动app,一样用JavaScript来渲染视图,并用native来实现平台适配,也应该被看成hybrid讨论。一些框架罗列以下:post
React Native一直是闭源的,而NativeScript刚刚发布开源后的beta版本,因此均没法提供更多的信息去彻底的理解如何在app中使用他们的框架。
如今你应该已经有办法去作出有效的选择了,系列文章的下一篇将特别聚焦在PhoneGap在native中嵌入webview的混合开发中如何使用。很快更新,及时查看。