一、前言
说到前端开发,就不得不说到跨端开发,因为它可以提高应用程序的效率并降低开发成本。uni-app
是一种跨平台开发框架,基于Vue.js
,并且可以在多个平台如微信小程序、支付宝小程序、H5等上运行。对于开发人员来说,这意味着他们可以使用同一个代码库来构建多个平台的应用,而不需要开发不同的代码库。
相信大家对小程序都不陌生,在生活的方方面面中都有它的身影,比如:社区团购、商城购物、打车出行、订餐外卖、健康码、小游戏等,都是小程序的影子,小程序的普及,主要来源于他独有的优势,无需安装、随用随走、不额外占用内存,是一种功能强大轻量化的APP,用户通过扫码或多种方式,即可快速开启,深受广大开发者及用户的青睐。
那么,如果计划开发一款小程序,使用原生还是uniapp
?如何开发一款小程序?下面就原生开发及跨平台开发做简要讲解。
二、原生开发
原生开发的优点如下:
-
官方文档清晰明了,更接近手机服务的底层逻辑,开发者可以更有针对性的对小程序进行深度开发。
-
使用原生开发可以紧随官方版本,更新响应速度快,让项目达到最优状态。
再来看一下缺点:同前端开发一样,开发不同平台下的小程序,需要不同的开发工具及语法,如微信开发者工具、阿里开发工具、字节跳动开发工具、QQ开发工具等等,如果项目只做单平台的小程序,原生无疑是最优的选择,但如果同时开发多平台小程序,同样的项目需要写多套代码,后期维护起来工作量大成本高。
三、uni-app 开发
uni-app
开发的优点如下:
-
一套代码可以打包14个不同类型的平台,能生成各种小程序H5及APP应用,开发者不需来回切换各种开发工具,使用
HBuilderX
一款编辑器全搞定。 -
方便入手,使用
vue
的语法结合小程序api,有vue
基础可以看文档直接上手,没有vue
基础可以通过uni-app
掌握vue
开发,毕竟vue
是前端开发界的扛把子。 -
uni-app
多终端支持而且生态更好一些,如果项目要求不高,基本不用写太多代码,就能速成一款应用(低代码平台微搭也可以考虑
)。
再来看一下缺点:
uni-app
打包出来的小程序可能会存在平台兼容问题,同样的代码会在不同平台下存在差异,官方版本更新活跃,相信这些问题逐渐都会得到解决的。
下面以微信小程序原生开发与uni-app
两种形式的开发,进行生态上的差异对比:
3.1 UI组件库
很多前端同学CSS
普遍不大好,做出来的项目样式非常土气,UI组件库可以让我们快速构建出一款美观的应用,微信小程序和uni-app
都有官方库和第三方库,uni-ui
配合uView
的组合功能更多更全,大家可以自己对比看看。
3.2 插件市场
截止目前,微信服务市场的插件是100+款,uni-app
插件市场8K+款,很明显uni-app
插件市场的开发者活跃度更高。
3.3 用户体系
微信小程序依赖于微信的一键登录非常方便,uni-app
不但能使用微信登录,而且还有一套自己的用户管理系统,结合uniCloud
几乎不需要写太多的代码,就能集成一套多平台的,用户登录注册体系。
3.4 后台管理系统
微信小程序有自带的内容管理系统,uni-app
有uni-admin
后台管理系统,从上手难易程度来讲,微信的内容管理系统非常简单方便,但是模块不能扩展,只能做一些简单的增删改查,uni-admin
后台管理系统其实就是一个vue
项目,上手有些难度,但是可以任意扩展自定义模块。
3.5 云开发
云开发可以让前端工程师转变为全栈开发工程师,让前端开发可以自己操作数据库,目前腾讯小程序依赖的腾讯云开始收费了,月费为19.9,uni-app
可以使用腾讯云,也可以使用阿里云,目前阿里云免费,可以白嫖。
3.6 难易程度
如果你是新手的话,上手哪个都可以,都算是前端必备的技能 。