原生开发、H5开发和混合式开发的区别
目前市场上主流的APP分三种:
1.原生APP
2.Web APP(即H5)
3.混合APP,还有flutter等
三种开发模式对比如下:
1.原生开发(Native App开发)
优点:可访问一台手机的所有功能,比如GPS、摄像头、扬声器等,可实现最齐全的功能;
运行速度快、性能高,用户体验最佳;
支持大量图形、动画的计算,不卡顿,随着CPU的优秀,反应和速度越来越快;
兼容性高,每个代码经过设计,一般不会出现闪退,还能抵御和防止病毒或漏洞;
比较快捷的使用设备端提供的接口,处理速度快。
缺点:开发时间长,制作费昂贵,成本高;
可移植性较差,一款原生的App,需要再安卓和苹果系统各自开发,同样的需求需要写两套逻辑或代码;
内容受限制(App Store限制)
必须等用户下载才可以使用,每次新版本都需要用户重新下载或更新
因为开发周期长,会造成需求迭代较慢,上线慢
2.Web APP(h5开发)
可以在手机端浏览器里打开的网页就称为webapp。Web技术本身需要浏览器的支持才可进行展示和交互,
因此主要用到的技术是html、css、js或vue、react等框架语言。
优点:开发成本低,开发周期短;
无平台内容的限制;
支持设备广,可跨平台,一套代码可以同时运行在安卓、IOS、windows上运行
用户可以直接看到或感知最新版本,即无需用户手动更新或下载
缺点:由于本身技术的限制,H5还不能直接访问设备的一些硬件条件(摄像头、麦克风等);
体验和性能较原生有很大的局限性;
对联网要求高,无网的情况下无法做任何操作;
页面切换的流畅性较差,多动画下卡顿,用户体验与原生比较差;
图片和动画的支持性不高;
3.混合开发—Hybrid App开发
混合开发(Hybrid App开发),是指在开发一款App产品的时候,为了提高效率、节省成本而利用原生与
H5的开发技术的混合应用。
优点:开发效率高、节约时间成本。同一套代码在安卓或IOS基本上通用;
更新和部署比较方便,每次升级不需要上传到App Store或应用市场审批;
代码维护方便、版本更新快;
比web的实现功能会多一些。
缺点:功能界面无法自定义,内容都是通过设计固定好的;
对网络要求高,每个页面都需要重新下载,缓冲时间长,容易给用户造成等待的反感;
安全性较低。
在混合式开发中,如何辨别出原生和H5
- 看加载方式—如果再打开新页面时,导航栏下面有一条加载的线的话,这个页面多半就是H5页面,反之则
是原生页面。微信里打开我们的H5页面常见有个绿色的加载线条。 - 看app顶部导航栏是否会有关闭的按钮—这个判断在某些场景可以进行判断,一般app内原生页面不会添加
关闭按钮(除非设计需要) - 看布局(只限安卓手机)—可以打开手机的>开发者选项>显示布局边界,此时可以看到,一般H5的页面布局
是一整块,而原生空间的布局是密密麻麻的 - 看复制文章的提示—此判断方式不太准确,只可作为参考,比如有些H5的页面没有对复制选择功能做屏蔽的话,可以发现在
文章页面长按页面,会出现文字选择、粘贴 - 看断网情况—把手机的网络断掉,然后打开页面。还可以正常显示东西的一般是原生页面。显示404或错误页面的
是html页面。原生部分页面是可以继续正常打开的,打不开的原生页面和H5报错信息也是有区别的 - 下拉页面的时候,若在下拉处显示网址提供方的大部分都是H5
总结与思考:
三种方式各有优缺点,选择合适自己团队的,选择适合自己需求、成本、时间的,才是最好的方案,就像技术本身没有绝对的好坏之分,只有不断锤炼,让每一种技术都发挥出最大的作用,才是一个开发者或团队的最佳使命。
今天的文章原生开发、H5开发和混合式开发的区别分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/33115.html