wep app和原生app的区别-阿里云开发者社区

开发者社区> 开发与运维> 正文

wep app和原生app的区别

简介:
                wep app和原生app的区别
原生App
每一种移动操作系统都需要独立的开发项目;
每种平台都需要独立的开发语言。Java(Android), Objective-C(iOS)以及Visual C++(Windows Mobile)等等;
需要使用各自的软件开发包,开发工具以及各自的控件
   
移动Web App
因为运行在移动设备的浏览器上,所以只需要一个开发项目
这种应用可以使用HTML5,CSS3以及JavaScript以及服务器端语言来完成(PHP,Ruby on Rails,Python
这里可没有标准的SDK,基本任意选择别忘了有一些跨平台的开发工具,比如PhoneGap, Sencha Touch 2APPcan以及Appcelerator Titanium等等。
能力方面
原生App
能够与移动硬件设备的底层功能,比如个人信息,摄像头以及重力加速器等等
   
移动Web App
只能使用有限的移动硬件设备功能。
获取方法
原生App
直接下载到设备
以独立的应用程序运行(并不需要浏览器)
用户必须手动去下载并安装这些原生App
有一些商店与卖场来帮助用户寻找你的App,目前app市场不计其数。
  
移动Web App
从移动设备上的浏览器访问
不需要安装额外的软件
软件更新只需要服务器就够了
因为现在没有什么商品或卖场提供这种App,所以如何搜索这些移动Web App相当不简单
版本控制
原生App
用户可以自由地选择是否更新软件版本,所以会出现不同用户同时使用不同版本的情况
 
移动Web App
所有的用户都是用同样的版本
优势
原生App
比移动Web App运行快
一些商店与卖场会帮助用户寻找原生App
官方卖场的应用审核流程会保证让用户得到高质量以及安全的App
官方会发布很多开发工具或者人工支持来帮助你的开发
 
移动Web App
跨平台开发
用户不需要去卖场来下载安装App
任何时候都可以发布App,因为根本不需要官方卖场的审核
如果你已经有了一个Web App,你可以使用 responsive web design来辅助改进(这也是优势?)
缺陷
原生App
开发成本高,尤其是当需要多种移动设备来测试时
因为是不同的开发语言,所以开发,维护成本也高
因为用户使用的App版本不同,所以你维护起来很困难
官方卖场审核流程复杂且慢,会严重影响你的发布进程
   
移动Web App
无法使用很多移动硬件设备的独特功能
要同时支持多种移动设备的浏览器让开发维护的成本也不低
如果用户使用更多的新型浏览器,那问题就更不好处理了
对于用户来说,这种App很难被用户发现
原生App 移动Web App:您如何选择?
所以在你准备做移动App时,你应该先问问自己以下几个问题:
1.
你的应用是否需要使用某些设备的特殊功能,比如摄像头,摄像头闪光灯或者重力加速器
2.
你的开发预算是多少?
3.
你的应用是否一定需要网络
4.
你的应用的目标硬件设备是所有的移动设备还是仅仅只是一部分而已
5.
你自己已经熟悉的开发语言
6.
这个应用对于性能要求是否苛刻
7.
如何靠这个应用赢利
我想这几个问题应该能让你做出明智的选择。
结论:
是原生App还是移动Web App,主要受商业目标,目标用户,以及技术需要这些因素影响的。其实更多时候你也不要为选择那种App模式烦恼,正如本文提到,类似Facebook这样的公司就为用户提供了两种选择。然而对于大部分人来说,预算,资源限制将会逼迫我们只能选择其中一种(或者只能以其中一种为重点)。

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章