myblogdhy 2019-07-19
我们都知道目前的几大主流的移动应用开发方式:Native App,Web App,Hybrid App。那他们之间的联系和优缺点各是什么呢?
1.Native App:本地应用程序(原生App)
Native开发也即原生开发,如果你是做Android 开发,那么大部分都是用Java 语言来编写的,如果你是做iOS开发,则是使用Objecttive C 或者Swift来进行编写的,这些都是官方的标准,好处显而易见,利用官方提供的API ,开发的APP有更好的性能,可以实现各种酷炫的效果,有更好的兼容性,对用户来说体验更好。
具体优点如下:
(1)打造完美的用户体验
(2)性能稳定
(3)操作速度快,上手流畅
(4)访问本地资源(通讯录,相册)
(5)设计出色的动效、转场
(6)拥有系统级别的贴心通知或提醒
(7)用户留存率高
具体缺点如下:
(1)分发成本高(不同平台有不同的开发语言和界面适配)
(2)维护成本高(例如一款App已更新至V5版本,但仍有用户在使用V2、V3、V4版本,需要更多的开发人员维护之前的版本)
(3)更新缓慢,根据不同平台,提交–审核–上线 等等不同的流程,需要经过的流程较复杂
2.Web App:网页应用程序(移动App)
Web App,顾名思义是指基于Web的应用,基本采用Html5语言写出,不需要下载安装。类似于现在所说的轻应用。基于浏览器运行的应用,基本上可以说是触屏版的网页应用。
具体优点如下 :
(1)开发成本低
(2)更新快
(3)更新无需通知用户,不需要手动升级
(4)能够跨多个平台和终端
具体缺点如下:
(1)临时性的入口
(2)无法获取系统级别的通知,提醒,动效等等
(3)用户留存率低
(4)设计受限制诸多
(5)体验较差
究其原因就是性能要求的问题。Web app之所以能够占领开发市场,主要是因为它的开发速度快,使用简单,应用范围广,但是在性能方面因为无法调用全部硬件底层功能,就现在讲,还是比不过原生App的性能。当然现在前端技术的急速发展也是有目共睹的,随着各种框架技术的突破,有一天Web App完全取代原生App也不是不可能。
3.Hybrid App:混合应用程序(混合App)
Hybridapp是指半原生态半Web的混合App软件,同时兼具“原生App软件改善与用户交流体验的好处”和“Web App软件跨平台开发的好处”。它需要下载和安装。它看起来像一个本地应用程序,但是只有几个用户界面网页视图,并且访问的内容是一个网页。混合App现在越来越受欢迎一个原因是“热更新”是可能的,不受监察和在线等复杂过程的限制。
AppStore里的电商类、新闻类APP,视频类APP普遍采取的是Native的框架,Web的内容。如淘宝、腾讯新闻等等。Hybrid App 极力去打造类似于Native App 的体验,但仍受限于技术,网速,等等很多因素。目前,有几种流行的跨平台应用打包方法。
发展历程:
在国外,最大的是Cordova(PhoneGap,2011年广泛流行),在2012年12月开源。
在国内,按时间顺序,有:2012年AppCan,2014年9月APICloud
1.AppCan
AppCan成立于2010年,2011年推出产品并测试,2012年正式推出品牌,2013年商业模式成型,2014年开发者注册约70w。AppCan不是开源平台,同时,企业版和部分插件是收费的。换句话说,AppCan只是一个卖软件的商业公司。我们认为:这会对其市场的占有率有着直接影响,闭源而没有垄断,所以前景不会太好。
2.APICloud
APICloud提供本地应用的功能模块(例如,设备访问、接口布局、开放源SDK ),并且开发人员可以在JS中调用。前端工程师负责页面布局、用户界面演示和简单的交互,而本机模块负责性能和功能实现,它们结合起来形成一个完整的应用程序。此外,APICloud还提供了云数据库功能,前端无需了解PHP,而是了解后端语言,并通过JS接口或rest风格的API实现对数据库的其他更改调查。