近些年,随着移动互联网和移动设备的普及,基于原生环境的移动端开发方兴未艾。同时,Web开发者也不甘寂寞。基于移动端浏览器开发可自适应多屏幕的Web应用自然而然地出现了,各类已有网站迅速被移动化了。此时的Web开发者和移动端原生开发者泾渭分明,各自在各自擅长的领域辛勤搬砖。一个弄网站,一个弄App。
App开发的世界是一个令人兴奋的,但有时令人困惑的地方。应该选哪个类型的应用程序没有明确的答案。你的选择将取决于你的技能、预算和时间要求,还有对不同类型的应用程序的理解。
当我们开始考虑开发App的时候,要考虑一堆技术成本。iOS和Android有什么区别?原生App、WebApp到底是什么?更重要的,哪个才是最适合你以及你的App?今天亿点时代就帮助大家弄清楚原生与WEB之间的区别。
基本概念
Web App是基于浏览器存在的,用户必须通过浏览器访问,不需要下载安装,实现了跨平台,也就是说不用像原生App那样做两个版本,版本也统一,不需要去下载更新。
原生App是需要去应用商城或者其他的地方下载安装包,安装后才能使用,每一次更新都需要用户主动去操作,而且版本众多,需要去维护旧的版本。
开发方面
原生App
a. 每一种移动操作系统都需要独立的开发项目;
b. 每种平台都需要独立的开发语言。Java(Android), Objective-C(iOS)以及Visual C++(Windows Mobile)等等;
c. 需要使用各自的软件开发包,开发工具以及各自的控件。
移动Web App
d. 因为运行在移动设备的浏览器上,所以只需要一个开发项目;
e. 这种应用可以使用HTML5,CSS3 以及JavaScript以及服务器端语言来完成(PHP,Ruby on Rails,Python);
f. 这里可没有标准的SDK,基本任意选择别忘了有一些跨平台的开发工具,比如PhoneGap, Sencha Touch 2,Appcan以及Appcelerator Titanium等等。
版本控制
移动Web App
g. 所有的用户都是用同样的版本。
原生App
h. 用户可以自由地选择是否更新软件版本,所以会出现不同用户同时使用不同版本的情况。
优势
原生App
i. 比移动Web App运行快;
j. 一些商店与应用市场会帮助用户寻找原生App;
k. 官方应用市场的应用审核流程会保证让用户得到高质量以及安全的App;
l. 官方会发布很多开发工具或者人工支持来帮助你的开发。
移动Web App
m. 跨平台开发;
n. 用户不需要去卖场来下载安装App;
o. 任何时候都可以发布App,因为根本不需要官方卖场的审核。
缺陷
原生App
p. 开发成本高,尤其是当需要多种移动设备来测试时;
q. 因为是不同的开发语言,所以开发,维护成本也高;
r. 因为用户使用的App版本不同,所以你维护起来很困难;
s. 官方应用市场审核流程复杂且慢,会严重影响你的发布进程。
移动Web App
t. 无法使用很多移动硬件设备的独特功能;
u. 要同时支持多种移动设备的浏览器让开发维护的成本也不低;
v. 如果用户使用更多的新型浏览器,那问题就更不好处理了;
w. 对于用户来说,这种App很难被用户发现。