这次,小编来给大家介绍一下 “APP的三种开发模式” 吧,希望能帮助大家更加了解APP开发。

1)原生App开发(Native App, 本地应用程序,包内页面);
2)采用Hybrid混合框架开发(Hybrid App,混合应用程序,云端一体);
3)采用ReactNative和WEEX等混合框架开发(混合App,包内页面)。
原生开发
优势:
厂商原生技术,自由度最大。
社区和文档化都非常完善,各种技术资料和解决方案相当的丰富。
历史比较久,具备一定资历的开发人员比较好招 (但并不意味着便宜)。
劣势:
开发成本高,技术难度高。
项目无法跨平台,需要两支团队。
需要投入的开发、测试力量以及周期都比较长,这会导致迭代节奏偏慢(要想快就得加人),不一定跟得上产品的迭代节奏。
Hybrid开发
混合模式移动应用,介于web-app、native-app这两者之间的app,兼具“Native App良好交互体验的优势”和“Web App跨平台开发的优势”(百度百科解释)
优势:
网页迭代速度快,这个是公认的。
跨平台性突出,有利于节省人力,1到1.5人可以维护两大平台的应用。
前端社区的技术演进非常快,社区活跃。
当下而言,前端工程师人力资源比较丰富。
劣势:
性能劣于原生开发,容易出现性能问题。
严格说hybrid只是一种技术理念,而并不是具体的技术解决方案。应用开发商常常需要自行构建维护技术栈。
虽然有封装了native接口的hybrid框架(比如ionic)可选择,但是对于相对复杂的应用,现有的hybrid框架并不能满足需要,所以使用hybrid方式开发的应用,常常需要原生补充,这种情况下不同模块的用户体验难以统一。
RN/Weex
优势:
使用系统原生UI组件,性能和体验相比hybrid更接近于原生。
由于RN和Weex都是一线互联网厂商的产品,除了组件和api封装之外,还会对热更新一类的工程需求给出明确解决方案。
劣势:
不使用html5自然有好处,但是也会带来坏处。比如,需要分别搭建Android和IOS开发环境,分别Release。RN的核心理念是“learn> 再比如针对RN/Weex的设计并不像hybrid那么灵活,并且会一定程度上产生平台分化。
学习曲线可能不像大家想像中那么平滑,不管是前端还是移动开发工程师,进入RN/Weex领域还是需要一个学习期的。
RN/Weex的可调式性比纯浏览器还是要差上一截,开发体验并不那么好,这也一定程度上增加了开发成本。
原创文章,作者:海龙王软件开发,如若转载,请注明出处:https://www.3gwhai.com/prosandcons/