近几天一直在学习混合应用的开发。先前对于原生,混合,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

最后的话:
只是看到了冰山一角,还在努力前行。如有错误,请一定要提醒,万分感谢。

原生应用,混合应用,H5应用区别相关推荐

  1. App3种开发方式的优劣分析:原生、混合和H5

    App混合开发(英文名:Hybrid App),是指在开发一款App产品的时候为了提高效率.节省成本即利用了原生的开发技术还应用了HTML5开发技术,是原生和HTML5技术的混合应用.目前App的开发 ...

  2. h5 bootstrap 小程序模板_一道面试题小程序与H5的区别

    抛砖 此文是一道面试题,又不仅仅是一道面试题 面试题,在各个技术社区里都是一个永不落伍的话题,好像大多数人临面试前都会狂刷面试题,恨不得把所有面试题都看一遍,要说有用没,当然有用,因为大部分面试题确实 ...

  3. app能不能跳转外部h5_轻羽微信小程序和H5的区别在哪里?主要有三点

    随着移动互联网的发展,许多应用在不断的产生,要说现在更新快.开放功能多的应用,只能是微信小程序了.微信小程序开放了60多个流量入口,更新了各种新的功能,尤其是之前实现的页面跳转功能,给开发者带来了好消 ...

  4. 云原生的本质_什么是云原生?云原生和传统软件有什么区别?有什么特征

    云原生 很多人都会问"到底什么是云原生?"."云原生和传统软件有什么区别?". 背景 顾名思义,云原生应用即专门为在云平台部署和运行而设计的应用.云原生能够以可 ...

  5. h5 bootstrap 小程序模板_微信小程序和H5的区别在哪里?主要有三点

    原标题:微信小程序和H5的区别在哪里?主要有三点 随着移动互联网的发展,许多应用在不断的产生,要说现在更新快.开放功能多的应用,只能是微信小程序了.微信小程序开放了60多个流量入口,更新了各种新的功能 ...

  6. 小程序与服务号、App、H5的区别

    小程序与服务号的区别 小程序与服务号是并行体系,同属于微信生态圈.企业要做好.做大一个服务号,基础就是获取大量目标用户的关注,即获得大量粉丝.服务号与用户存在关注和订阅的关系,业界通过粉丝数量判断该服 ...

  7. 互动赠新书|当云原生遇到混合云:如何实现“求变”与“求稳”的平衡

    互动赠新书|当云原生遇到混合云:如何实现"求变"与"求稳"的平衡 作者|郝树伟   Flexera 的<RightScale2021 云状态报告>中 ...

  8. jQuery学习(四)— jQuery的ready事件和原生JS的load事件的区别

    jQuery学习(四)- jQuery的ready事件和原生JS的load事件的区别 jQuery的ready事件和原生JS的load事件的区别: 页面中可以有多个ready事件,而load事件会出现 ...

  9. zx-editor 移动端(HTML5)富文本编辑器,可与原生App混合(hybrid)开发

    zxEditor 移动端HTML文档(富文本)编辑器,支持图文混排.引用.大标题.无序列表,字体颜色.加粗.斜体. 可用于独立web项目开发,也可以用于与原生App混合(hybrid)开发. 源码地址 ...

最新文章

  1. Extjs PROXY查询params无法传参,改用extraParams
  2. Android CardView 开发过程中要注意的细节
  3. ExtJs入门 (02)-布局面板
  4. 【模拟】游戏(jzoj 1614)
  5. WildFly Kubernetes exec探针
  6. mongodb存储数据_在MongoDB中存储分层数据
  7. 计算机操作员实操高级试题,计算机操作员高级实操(以往考过,可做平时练习素材)答题.doc...
  8. 3-13其他数学函数
  9. 解决Latex报错latex Unknown float option `H‘.
  10. Netty工作笔记0020---Selectionkey在NIO体系
  11. 配置WIN2003远程桌面的客户端连接数
  12. JS判断字串字节数,并截取长度
  13. python 代理服务器 身份验证_使用httplib2处理身份验证和代理服务器
  14. 使用HanLP分词时,词性标注错误的问题
  15. 计算空间点到直线的距离
  16. 美国与中国互联网电视发展状况比较分析研究
  17. c语言编译题a b,C语言考试试题A卷.doc
  18. x299服务器芯片,X299比X399差在哪? 两大平台产品比拼
  19. 数据分析基础:数据可视化+数据分析报告(Python实现)
  20. Core Java笔记------来自达内项目经理穆笛

热门文章

  1. python制作聊天机器人_如何制作一个聊天机器人?
  2. 腾讯云服务器文件怎么恢复吗,实战腾讯云镜像备份恢复云服务器实例提取网站数据文件...
  3. 七牛云邵杰:视觉智能——视频云新时代
  4. i7 10750h是标压吗 属于什么档次 i7 10750h天梯图
  5. matlab中unifrnd函数用法,概率和统计的MATLAB指令
  6. nabc模型_团队开发-极速蜗牛-NABC模型
  7. 软件设计-UML类图详解说明
  8. 最低2000多,中国房价最低的30城,你会选择吗?
  9. 微信小程序--动态时间实现
  10. ios10之后的一些新特性