读书频道 > 网站 > 网页设计 > 深入浅出PhoneGap
1.1.4 PhoneGap的优缺点
13-01-07    奋斗的小年轻
收藏    我要投稿   

本文所属图书 > 深入浅出PhoneGap

本书深入浅出地介绍了时下流行的开源移动开发平台PhoneGap,内容涵盖PhoneGap 的各类API、插件机制和第三方常用插件,以及各主流平台上的通信机制的实现方式。此外,本书还介绍了如何整合流行的移动Web 开发框...立即去当当网订购

想知道PhoneGap的优缺点,必须先对原生应用、Web应用和混合型应用这3个概念有所了解,下面我们简要介绍这3个概念。
 原生应用。通过各种应用市场安装,采用平台特定语言开发。
 Web应用。通过浏览器访问,采用Web技术开发。
 混合型应用。通过各种应用市场安装,但采用Web技术开发。它虽然看上去是一个原生应用,但里面访问的实际上是一个Web应用。

原生应用指的是用平台特定的语言所开发的应用,比如iOS使用Objective-C语言,Android使用Java语言。使用它们的优点是可以完全利用系统的API和平台特性,它们在性能上也是最好的。缺点是由于开发技术不同,如果你要覆盖多个平台,则要针对每个平台独立开发。

原生应用因为位于平台层上方,向下访问和兼容的能力会比较好一些,可以支持在线和离线、消息推送和本地资源访问、摄像头和拨号功能的调取。但是由于设备的碎片化,应用的开发成本要高很多,维持多个版本的更新升级比较麻烦,用户的安装门槛也比较高。新浪微博的客户端就是原生应用,其界面如图1-8所示。


 

原生应用的优势如下:
 提供最佳的用户体验、最优质的用户界面和最华丽的交互;
 针对不同平台提供不同体验;
 可节省带宽成本;
 可访问本地资源;
 盈利模式明朗。

原生应用的劣势如下:
 移植到不同平台上比较麻烦;
 维持多个版本的成本比较高;
 需要通过store或market确认;
 盈利需要与第三方分成。

Web应用则是完全用HTML、JavaScript和CSS等Web技术开发,通过移动设备的浏览器来访问,其优势在于开发跨平台的应用时,可以充分利用现代移动浏览器的HTML5特性。当然这些基于浏览器的应用无法调用系统API来实现一些高级功能,也不适合高性能要求的场合。

Web应用无需安装,对设备碎片化的适应能力优于原生应用,它只需要通过HTML、CSS和JavaScript就可以在任意移动浏览器中执行。随着iPhone带来的WebKit浏览体验的升级,专为iPhone等由WebKit浏览内核的移动设备开发的Web应用也有了如原生应用一般流畅的用户体验。百度地图的移动网页版本就是Web应用,其界面如图1-9所示。


 

Web应用的优势如下:
 开发成本低;
 适配多种移动设备的成本低;
 跨平台和终端;
 迭代更新容易;
 无需安装成本。

Web应用的劣势如下:
 浏览体验短期内还无法超越原生应用;
 不支持离线模式(HTML5将会解决这个问题);
 消息推送不够及时;
 调用本地文件系统的能力弱。

有办法可以融合两者的优势吗?

从长远来看,Web技术是未来,虽然现阶段原生应用给了用户更好的体验,但如果现在的开发者不有效利用Web技术,那他一定会落伍。不过,如果过分依赖Web,完全不用原生功能的话,那应用的用户体验和提供的功能将大打折扣。

混合型应用可以说是为了弥补上面两种应用开发模式的缺陷而生,它是两者混合的产物,并且尽可能继承了双方的优势。首先,它可以让众多Web开发人员几乎零成本地转型成移动应用开发者。其次,相同的代码只需针对不同平台进行编译就能实现在多平台的分发,大大提高了多平台开发的效率。而相较于Web应用,开发者可以通过包装好的接口调用大部分常用的系统API。

不过有一点我们必须清楚地认识到,混合型应用还不能完全取代原生应用,在一些复杂的API调用或者涉及高性能计算的应用开发上,原生应用还是唯一的选择。除此以外的大多数场合下,混合型应用以很小的性能牺牲为代价,带来了极大的灵活性和开发效率,有什么理由不去使用它呢?掌上百度就是混合型应用,其界面如图1-10所示。

PhoneGap正是混合型框架中的佼佼者,它基于标准的Web技术——HTML、JavaScript和CSS,用JavaScript包装平台的API供开发者调用,具备强大的编译工具来为不同平台生成应用,同时拥有丰富的第三方资源和产业链。

PhoneGap在Web应用和设备之间搭建了一个通信的桥梁,封装了移动设备的平台差异,统一使用JavaScript接口访问设备本地API,以此提供了一个优秀的跨平台解决方案。
结合前面对于PhoneGap的说明,我们得出PhoneGap的优势如下:
 开发成本低;
 对各大主流平台的兼容性非常好;
 采用W3C标准化技术;
 能够快速进行开发,迭代更新容易;
 轻量级和插件式架构显著降低了维护成本;
 开源免费,并由Adobe公司和Apache基金会共同支持。

PhoneGap也有如下一些缺点:
 浏览体验短期内还无法超越原生应用;
 特别复杂的应用运行速度稍显缓慢;
 在某些JavaScript渲染速度较慢的设备上,UI反应略有延时。


 

当然,跨平台的流行是不可避免的,这些劣势一定会随着移动技术和Web标准的迅猛发展而渐渐消失。

目前,PhoneGap已经有了相当多的成功案例,例如著名的维基百科移动客户端和NFB Films,而中国目前也已经涌现出了一批PhoneGap应用,例如赶集团购的移动客户端。

点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.3 功能
下一篇:1.5 小结
相关文章
图文推荐
JavaScript网页动画设
1.9 响应式
1.8 登陆页式
1.7 主题式
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站