uni-app与原生app优缺点对比
阎道成 2022/2/25 uni-app
# 一,由于公司移动端选型方案大部分都是uni-app,首先来说一下uni-app的优点
- uni-app是一个使用 Vue.js (opens new window) 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。
- uni-app对前端开发人员比较友好,学习成本比较低,首先uni-app是基于vue.js的。其次封装的组件和微信小程序的组件基本一致,所以对于现在的主流前端人员来说学习几乎0成本。
- uni-app使用HBX进行开发,HBX对于vue语法等支持可以说是比较完备了。使用HBX进行开发可以说是速度杠杠的。开发速度比较快。
- uni-app拓展能力强,封装了H5+,支持nvue,也支持原生Android,ios开发。可以将原有的移动应用和H5应用改成uni-app应用。
# 二,重点介绍下uni-app(ios/android应用)和原生app有什么区别,分别从开发技术、功能、加载速度及开发成本四部分详细介绍
# ①开发区别:
- 原生app:我们都知道,现在手机系统分为android和苹果iOS两个系统,两个系统分别对应着两套不同的编程语言、编程开发工具。原生app开发,就是利用安卓和iOS官方的编程语言、编程工具进行app的开发。
- uni-app:主要借助网页技术进行开发,相当于开发一个网页,然后分别生成安卓和iOS的壳。这种app只需要一套编程开发语言,技术简单,人力少,周期短。
# ②功能区别:
- 原生app:原生app深度对接手机app,可以实现手机的各种功能,比如蓝牙、短信、重力感、摄像头、GPS、麦克风、蓝牙应等。功能丰富,页面的展示也更多多元、灵活、自由。
- uni-app:类似于手机上的网页,主要向用户展示一些基本功能,可实现的功能方便受限。
# ③加载速度:
- 原生app:原生APP由“云服务器数据+APP应用客户端”两部分构成,APP应用所有的UI元素、数据内容、逻辑框架均安装在手机终端上。访问的时候,不需要重新下载加载应用页面框架,只需要加载数据即可。所以加载速度更快,页面响应更快。
- uni-app:而uni-app打开一个页面,都需重新加载页面的所有元素,访问速度受手机终端性能和网络环境的限制,导致加载速度稍慢,体验方面逊于原生app。
# ④开发成本:
- 原生app:由于手机分为android和ios两个系统,原生app需要开发两套代码,且相关技术方面也需要一定的要求,投入人力较多,成本较大且周期较长(整体工时预计是uni-app的2.5-3倍)。
- uni-app:而uni-app一套代码即可打包android和ios应用,投入人力较少,周期短,后期维护成本也低。