混合应用、H5开发、原生开发的区别(转)
一:原生开发(Native App)
早在几年前移动互联网的浪潮已经席卷而来,那时候学习IOS和Android开发的学生非常多,来看一下原生应用。
概念:
原生app之所以称之为原生是因为他在开发时是由移动设备厂商自身提供的SDK或建议的开发方式来进行开发的;通常有android和ios两类开发方式,他们分别是基于Java语言和C++语言的,因此使用原生开发每一类app所需要的语言也不太一样。
优点:
1:原生app因为采用的是由各移动厂商提供的SDK,是基于特定的移动设备的操作系统所设计出来的,因此它的针对性强,与用户的交互体验非常好,性能很稳定;
2:更加贴近底层,因此他的操作更加的流畅;
3:相比较于混合应用,他在转场时的效果更加出色,不会出现各种白屏等现象,这也就会增加客户的留存率;
4:在应用中涉及到调取手机的相机等硬件设备,这些操作都是web APP实现不了的;
5:网络上,webapp一旦断网就无法访问,但是在原生app中即使断网也可以访问原来下载好的数据;
缺点:
1:同一个项目,针对不同的手机操作系统都要进行独立的开发,比如android和ios,同一种软件,要为不同的操作系统开发两个针对性项目。这就造成了开发成本的急剧上升,因此有一个段子就调侃道:“有钱有流量有资源,做App;穷逼做H5-_-”。
2:测试的时候也是非常麻烦,每一次修改都需要重新测试一次,而且上架时需要等待官方审核通过。
3:成本高,更新缓慢,这些成为了原生app逐渐被替代的主要原因。
(但是就算在混合开发中,很多框架都达不到原生的效果,单论性能来讲,原生是最佳的)。
二:H5开发(Web App)
概念:
H5开发时使用html,css,JavaScript开发的一个展示型应用,主要用于浏览器中进行点击后展示一些信息,他不能够调用手机底层的设备,比如说:手机版的小米官网,手机版的苹果官网。
具体的表现是在手机浏览器中会有一些应用的小图标,这些小图标在点击后,在浏览器中加载页面和你下载的app后打开页面是相同的,而这些小图标代表的就是web app。
优点:
1:方便测试,只需要输入网址就可以进行测试;
2:想要新增功能直接在后台添加即可,不需要通知用户升级;
3:量级低,开发成本很低,而且相应的他也不需要安装包;
4:是基于浏览器的,可以跨平台使用;
缺点:
1:断网就歇菜;
2:功能单一,用于展示,无法调用底层功能,比如相机;
3:与原生应用相对,他的交互体验很差;
三:混合开发(Hybrid App):
混和式App结合了原生App的支持度与Web App网页设计的技术,使用web app的技术进行开发,再封装成类似原生一样的app。
优点:
混合应用的出现就是集两者之优点,在开发上比原生更加简便,在功能上更加贴近原生全面超越web app。
缺点:
最主要的缺陷就是在性能上还是不如原生更加稳定,不如原生的交互体验更好。
三套开发组合:
1: Angular/AngularJS + OnsenUI + Cordova
2: Vue + MUI + H5+
3: HUI + React + ReactNactive
最后的话:
只是看到了冰山一角,还在努力前行。如有错误,请一定要提醒,万分感谢。
转自:http://www.360doc.com/content/20/0616/19/31115656_918843384.shtml
最近原生应用、Web应用、混合应用的名字让我们听得比较熟悉了,现在我们就通过评析各种应用的优缺点来更进一步看看这三者的区别。
一. 原生应用:
你使用过微软PowerPoint 或者 Word吧?这些可直接在你电脑上运行或者在智能手机上运行,简单来说,原生应用是特别为某种操作系统开发的,比如iOS、Android、黑莓等等,它们是在各自的移动设备上运行的。
优点:
可访问手机所有功能(GPS、摄像头)* 速度更快、性能高、整体用户体验不错* 可线下使用(因为是在跟Web相对地平台上使用的)*支持大量图形和动画*容易发现(在App Store里面)和重新发现(应用图标会一直在主页上)* 应用下载能创造盈利(当然App Store抽取20-30% 的营收)
缺点:
开发成本高;支持设备非常有限(一般是哪个系统就在哪个平台专属设备上用)*上线时间不确定(App Store审核过程不一)*内容限制(App Store限制)* 获得新版本时需重新下载应用更新
举例:Yellow Pages Group 就开发了是几个版本(iOS、黑莓、Android),他们在每一个原生应用市场都有上架。
二. Web 应用:
Web应用本质上是为移动浏览器设计的基于Web的应用,它们是用普通Web开发语言开发的,可以在各种智能手机浏览器上运行。
优点:
支持设备广泛*较低的开发成本*可即时上线*无内容限制* 用户可以直接使用最新版本(自动更新,不需用户手动更新)
缺点:
表现略差(对联网的要求比较大)*用户体验没那么炫*# 图片和动画支持性不高* 没法在App Store中下载、无法通过应用下载获得盈利机会* 要求联网* 对手机特点有限制(摄像头、GPS等)*#
这里如果带*#号的缺点,能把HTML 5的优点用到Web上的话就会得到很大改善,尽管技术在提高, 目前它还不能做原生应用可以做的每件事。
有些公司,比如金融时报继原生应用后也开发了Web应用,用户通过浏览器来访问他们的应用,因为他们的应用要采取应用内购买,而App Store是不允许应用内购买的,不然它们就无法拿到那20%-30% 的抽成了。
三. 混合应用:
混合应用大家都知道是原生应用和Web应用的结合体,采用了原生应用的一部分、Web应用的一部分,所以必须在部分在设备上运行、部分在Web上运行。
不过混合应用中比例很自由,比如Web 占90%,原生占10%;或者各占50%。
优点:
兼容多平台* 顺利访问手机的多种功能* App Store中可下载(Wen应用套用原生应用的外壳)* 可线下使用
缺点:
不确定上线时间* 用户体验不如本地应用* 性能稍慢(需要连接网络)* 技术还不是很成熟
比如Facebook现在的应用属于混合应用它可以在许多App Store畅通无阻,但是掺杂了大量Web特性,所以它运行速度比较慢,而现在为了提高性能FB又决定采用原生应用。
结论:现在如果你在想哪种应用是最好的,那答案就是,看情况而定:
1. 比如,你的预算是多少?预算充足的话可以开发几个本地应用加一个Web应用。
2. 你的应用需要什么时候面市?Web应用可以很快地开发然后直接推出来。
3. 你的应用需要包含什么特点和功能?如果跟手机的某些功能深度整合了,比如摄像头,需要呈现大量图形和动画就选原生应用好点。
转自:https://blog.csdn.net/duzilonglove/article/details/79175234

浙公网安备 33010602011771号