APP三种开发模式
目前主流应用程序大体分为三种:Web App(网页应用)、Hybrid Ap(混合应用)p、 Native App(原生应用)。
nativeapp是一个原生程序,一般运行在机器操作系统上,有很强的交互,一般静态资源都是在本地的。浏览使用方便,体验度高。在实现上要么使用Objecttive-c和cocoaTouch Framework撰写IOS程序,要么选择java+Android Framework撰写android应用程序。
优点:应用的性能好,适配起来相对容易
缺点:
1、无法跨平台:Android和iOS都需要开发各自平台的版本——开发成本高;
2、升级麻烦:每次升级都要下载安装包,Android还好,不需要审核,但iOS就麻烦了,发布每个版本还得经过App Store的审核;
3、Android和iOS很难同步发布。
hybridapp是一个半原生程序,伪造了一个浏览器的apk/ipa原生程序,把地址写死了,然后里面运行了一个webapp。里面是WebView UI 。但是还是运行在机器的操作系统上,交互较弱,资源一般在本地或者网络都可以。浏览体验度次之。
webapp是生存在浏览器里的应用,所以只能运行在浏览器里,宿主是浏览器,不再是操作系统。所有的请求都是需要用到网络的,资源一般都在网络上。就是一个网站
缺点:页面访问速度慢、操作体验差; 优点:成本低,开发难度低
|
Native App |
Hybrid App |
Web App |
原生功能体验 |
优秀 |
接近优秀 |
差 |
性能 |
非常快 |
快 |
慢 |
跨平台开发成本 |
昂贵 |
合理 |
便宜 |
碎片化适配 |
非常严重 |
严重 |
严重 |
编程技术支持 |
短缺 |
非常短缺 |
通用人才 |
版本升级维护 |
高 |
低延时 |
开放 |
安全 |
强 |
中 |
弱 |
淘宝天猫这样的超大型App,完全用Native是很难的,也是不现实的,业务逻辑太复杂,目前天猫是20% native +70 H5,search,detail,
未来的趋势hybrid app会是主流吗?值得商榷