APP原生开发和混合开发的优势和劣势
  • 作者:奔跑的小猪
  • 发表时间:2019-09-16 11:28
  • 来源:网络

原生开发


原生APP开发模式针对IOS、Android等不同的手机操作系统要采用不同的语言和框架进行开发,是专门针对不同移动设备而开发有针对性的版本,现在我们接触的基本都是IOS、Android两个版本,都是被直接安装到设备里,APP应用所有的UI元素、数据内容、逻辑框架均安装在手机终端上,需要在Android、IOS等移动平台上利用官方提供的开发语言、开发类库、开发工具进行App开发。比如android是利用java、eclipse、Android studio,IOS是利用Objective-C 和Xcode进行开发。原生应用由于利用的是官方提供的语言和工具并且能够直接操控硬件设备(比如多点触控、NFC、读取短信等),在应用性能上和交互体验上应该是最好的,但是原生应用的可移植性比较差。


优势:


APP响应速度快:大多数据都在本地所以省去缓冲加载调取数据的时间。


APP兼容性高:每个地方都是精心设计的,代码也是最新的,像最坚固的房子,最合理的抗震防风性,所以兼容性会更高不会闪退。


APP流畅性好:每个代码都是最新的,也是最合理的,所以不会卡顿。


APP安全性高:代码是最新的,每个地方是最新的设计,能防止病毒和漏洞。


APP功能可以自定:像盖房子一样,从0开始,前期设计好房子的构图、尺寸、大小,那个地方想怎么盖,那个地方想怎么装修,都可以完美实现。


开发时间长:自己盖房子,每个步骤都要考虑、每个地方都要设计,所以这样会耽误不少时间,短二三十天,长三五个月。


费用相对较高:因为每个地方、每个步骤都是原创的,经过设计师设计的。 就像盖房子的图纸等,每个地方都是根据自己所想的打造的,所以相对价格会贵一些。


适合领域:


适用于游戏、电子杂志、管理应用、物联网等无需经常更新程序框架的APP应用企业


混合开发


混合开发是结合原生和H5开发的技术,取长补短的一种开发模式,原生代码部分利用WebView插件或者其它的框架为H5提供了一个容器,程序主要的业务实现、界面展示是利用H5相关的Web技术进行实现的。比如现在的京东、淘宝、今日头条等都是利用的混合开发模式。


混合开发相当于一种框架开发,说白了就是网页,该模式通常由“HTML5云网站+APP应用客户端”两部份构成,APP应用客户端只需安装应用的框架部份,而应用的数据则是每次打开APP的时候,去云端取数据呈现给手机用户,此种APP数据都保存在云端,用户每次访问都需要从云端调取全部内容,这样就容易导致反应慢,每打开一个网页或点一个按钮都需要等半天。


优势:


时间短:基本都是模版拿来直接套上或打包成APP,会节省很大一部分时间。


价格便宜:代码不需要重新写,界面不用重新设计,都是固定的,可替换的地方很少,自己随便都能换上,所以价格相对便宜。


可迁移:因为是混合开发,更容易迁移


劣势:


功能/界面无法自定:所有内容都是固定死的,所以想换一个界面,想增加一个功能,都是不可以的。


加载缓慢/网络要求高:混合APP数据需要全部从服务器调取,每个页面都需要重新下载,所以打开慢,网络占用高,缓冲时间长,容易让用户反感。


安全性比较低:代码都是以前的老代码,不能很好兼容最新手机系统,且安全性较低,网络发展这么快,病毒这么多,如果不实时更新,定期检查,容易产生漏洞,造成直接经济损失。


适合领域:


适用于媒体网站/内容交付平台等企业,美团、淘宝等这样的平台