首页 APP开发 正文

uniapp开发框架怎么样(uniapp框架搭建)

APP开发 419
本篇文章给大家谈谈uniapp开发框架怎么样,以及uniapp框架搭建对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 uniapp是未来的趋势吗? 未来太遥远,不想这么多,技术栈几年一换才是常态。目前很多应用开发者在尝试使用uni-app,可以尝试一下,多学一点多一个技术选择不是坏事。 想学一个长久可用的技术,在IT界特别是中国,并不太现实。如果选择了前端,那情况只怕是更糟。 uniapp是未来趋势?NO!NO!

本篇文章给大家谈谈uniapp开发框架怎么样,以及uniapp框架搭建对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

uniapp是未来的趋势吗?

未来太遥远,不想这么多,技术栈几年一换才是常态。目前很多应用开发者在尝试使用uni-app,可以尝试一下,多学一点多一个技术选择不是坏事。

想学一个长久可用的技术,在IT界特别是中国,并不太现实。如果选择了前端,那情况只怕是更糟。

uniapp是未来趋势?NO!NO!

说uniapp成为趋势感觉有点好笑。

不懂行的可能不了解,我就换个说法。

我可以说手机行业小米手机会成为未来的趋势吗?

你认为可能性多大?当然不可否认小米很优秀了,当然实话实说,这也是相对的。想变成趋势可谓有点夜郎自大。

uniapp是什么?简单点说说吧

一个基于vue的跨平台开发的框架,有了它你可以写一套代码打包成安卓、苹果安装包,还可以导出各种小程序,还可以导出h5…,反正功能很强大。

它的出现,只要你懂点前端,只要你会点vue,OK那你就可以开发APP了。

厉害不厉害?可以说在某种程度上确实很牛逼,很方便,特别又是国产,文档、demo之类的很芦圆多。

平台又出有云服务,支付,广告等各种插件。小白上手也很快。所以一时圈了很粉,社区还算凑合吧。

uniapp之所以被越来越多的人需要,不得不说下跨平台。

APP开发跨平台确实是个刚需,也是一个真正的趋势。毕竟纯原生开发一个APP太复杂了,成本也高。有些APP根本不需要关心所谓的性能、流畅度之类的。所以跨平台,一套代码完全搞定,可谓是个不错的选择。

但是跨平台可选性的技术方案太多,与uniapp直接相对的,apicloud,在国产圈也是拉了不少粉。

此外rn,lonic,cordova,weex等之类的前辈仍然具有一定的地位,还有新起来flutter也是火的不得了。

所以uniapp只能说在小范围内可以说很好,但是和那些成熟,风靡海内外的技术框架还是有差距的。

uniapp真的好用吗?

首先,我感觉它越来越废了。有时真是感觉积累!

开发APP就专业开发APP吧,你还搞的适配一堆小程序,所以造成越来越臃肿。文档杂乱。

有时,选择你,我就是想仅仅开发APP。压根不要小程序!

所以,态逗特别是新手,因此会有一定的烦恼。

另一个 值得 吐槽的就是不太稳定!

架构经常换,而且之前的很难兼容!

为此估计不少人想骂人。特别那些已经有了成熟运营的APP。

再次升级的话,不好意思,很多东西重写吧。

从当初非自定义组件、自定义组件,再到今天的v3架构。可谓一步一个坑,真的严重依赖它的话,真的花费大精力去踩坑了。

当然一般的开发拿来用用还是不错的

我司项目开始用的h5+那一套,也用uniapp做过几个项目。反正要求不是很高,效果感觉还可以。

真的真的去完全适配安卓,苹果的话,要做的还是有很多。

OK,就这了。技术本身无所谓好坏,只有适合不适合。

有时基于时间、项目成本、人员技术水平,只要合适就是最好的。

uniapp也一样,希望它快快成长,快快稳定,完善吧!

uniapp目前确实很火,暂且不说uniapp这种框架是不是未来的趋势,但大前端绝对是未帆哗卖来的趋势。

在计算机编程领域,前端近几年的技术更新速度达到了顶峰。

这并不是得益于前端的语言优势,而是开放繁荣的生态。

uniapp这类框架正是前端进军移动互联网的利刃。

移动互联网过时了吗?不,移动互联网正在以新的形态进军PC。

所以,未来几年uniapp这类框架还会繁荣,而前端慢慢融合,PC与移动的前端界限越来越模糊。

serverless是趋势,unicloud正好整合了阿里云与腾讯云!

最重要的是unicloud开始标准化,uni-id ,unicloud-admin就是苗头!

听从开发者建议且更新频繁的框架!两年左右完善度已经非常高!

现在他们需要做的功能太多,所以一些细节性并未完善,一旦稳定下来,他们能把一些细节做好,这个框架与开发者工具绝对不容小嘘!

免费的服务器,免费的框架,对于初创团队,或者个人创业者,有想法的开发者,可以省大多成本!

自己独立完成的项目(超级档案)已上架小米,华为,苹果应用商店,同时,各大平台小程序也全部上架!

不是。h5类的优势在于开发简单,周期短,一套代码跑多端。适合初创快速迭代。任何一个成熟的产品在达到一定规模后,都会回归原生,或者混合。这是性能,用户体验,安全等多方面因素决定的。这也是有了rn后,为什么还会有flutter出现的原因。

何为趋势?在互联网高速发达的时代,物竞天择的规律同样适用,这个开发平台的主要目的就是解决了多平台重复,跨平台生态不好,开发和使用用户体验不好的问题,真正做到了一套代码全平台适用,一劳永逸,同时还不影响平台特色,随着整个业内开发者的用户数越来越多,势必会取代不合时宜的开发平台。从目前的使用广度和应用产品的市场反馈来看,它是具备这个能力的。

uniapp还是很多人用的,尤其在现在这个时间,用来开发小程序还是不错的

如果没有意外的话,他还会保持现状很长时间

对于小型项目或者交互要求不高的项目来说,基本是够用的,这种项目又普遍对成本或者开发效率非常敏感,在这点做的比uniapp好的确实不多,所以他的用户群会非常稳定

至于感觉上没人讨论的原因也很简单

一是有影响力的开发人员几乎不可能是uniapp的用户,uniapp的用户多数也提不出值得讨论的内容

二是这东西真没什么可讨论的,上限实在不高

uniapp目前在国内的生态很好,因为大前端是趋势,是uniapp在未来一段时间内还是很火的,个人认为如果创业阶段如果没有原生客户端工程师,只有web团队,uniapp非常适合

目前来说uniapp是 一款很好的开发小程序的编码工具,

优点有

一:简单易学,学习成本低。

二:可以跨多个平台,制作一套代码可以在多个平台发布

三:运行比较流畅,运行体验更好,兼容weex,组件·api和微信小程序一致

综合以上几点来看uniapp前景不错。

目前确实有这个趋势。用uniapp开发了一款app,叫小 时尚 ,目前已经在各大应用商店上线。

uniapp和app有啥区别

uniapp和app有携带很大的区别,uniapp是一种跨平台的开发框架,可以使用一套代码同时开发多个型则平台的应用,而app则是一种专门针对某一个平台卜隐棚的应用。

uniapp国外的?

不则困枯是。uniapp是一个由国内DCloud公司推出的多端开发框架项目。uniapp推出的主打特点就是开发者可以在uniapp中使用一套代码发行多个平台的程序。uniapp目前兼容的平台从Android、iOS和微信小程序以及WEB扩展到了支付宝小程序、百度小程序、字节跳动小程序、QQ小程序、快应用以尺氏及360小程序孙洞。

uniappvue3vue2性能

新版 uni-app 框架主要做了三大改进:

重写框架内核:基于vue3 + ts重写内置组件和API,实现更彻底、更高效的tree-shaking;

新增支持 Vite 构建工具,在H5平台实现秒开预览;

新增支持 Vue3.x,实现更灵活的开发方式,丛销配及更高的运行性能;

基于这三大改进,uni-app项目获得了多快好省四大收益:

更多的语法支持,支持组合式API,业务聚焦,开发效率更高;

更快的编译速度,H5平台十倍加速,小程序、App加速30%以上;

更好的运行性能,用户端响应更快,体验更好;

更小的代码体积,瘦身30%以上,更省体积、更省流量

更多的语法支持

新版uni-app支持Vue 3.x框架,支持组合式API,可实现更聚焦的业务开发。

Vue 3.x的一些新增特性,uni-app也已经完全支持,如:

支持script setup

支持style scoped、style module、State-Driven Dynamic CSS(v-bind)

支持jsx、tsx(h5,app 平台支持,小程序不支持)

另外,在小程序平台,新版uni-app也扩展了更多的语法,如:

更完善的模板语法支持(如 class、style 支持函数、变量等,不再局限数组、对象类型)

更完整的 props 支持(如传递函数)

更完善的 slot 支持(如作用域插槽)

更快的渗指编译速度

开发者日常工作中,最无聊的就是等待编译构建。

某乎上还有一个”程序员在等待编译的时候都做什么?“的讨论帖,可见编译时间对开发者而言,是一个多么尴尬无聊的碎片时间。

uni-app本次升级vue3 Vite后,在编译时间上有多少改进?带给开发者多少福利?我们安排真实测试,以数据说话。

测试环境说明:

硬件:RedmiBook 14 二代

处理器:Intel(R) Core(TM) i7-1065G7 CPU @ 1.30GHz

内存:16.0 GB

操作系统:Windows 11 专业版 64 位操作系统

关于编译速度,我们做了两个维度的对比:

纵向对比:挑选uni-app常用项目模板,在H5、小程序、App平台,分别测试vue 2.6和vue 3.x的编译时间

横向对比:使用业内优秀的其它跨端框架,创建默认项目模板,记录其编译时间,和uni-app的vue 3.x版本进行对比

uni-app 历史版本纵向对比

我们选择uni-app默认模板、uni-starter、hello-uniapp三个项目模板,分别测试vue 2.6和vue 3.x的编译时间。

uni-app项目编译时间的采集方式:

vue 2.6版本编译时间 = webpack 的 stats.endTime - stats.startTime

vue 3.x版本编译时间 = 构建工具入口处记录 global.vite_start_time = performance.now(),构建工具编译完成时:performance.now() - global.vite_start_time

H5平台

对uni-app的三个项目模板分别运行到H5平台,进行多次编译测试,并求其均值后,获得如下数据:

由此,我们可以观察到:

在vue 2.6环境下,随着项目复杂度的提升,H5首页预览所需编译时间会直线增加;这是因为在vue 2.6版本下,虽然仅预览首页,但依然会使用 webpack 编译斗握整个项目资源;故项目越复杂,编译时间越长;

在vue 3.x环境下,H5首页预览的编译时间跟项目复杂度也有关系,但增幅不大;这是因为在vue 3.x版本下,使用 Vite 进行构建,预览首页时仅编译首页及首页所依赖资源,不会编译其它页面资源。

通过图表对比,我们可以直观得出结论:vue 3.x环境下的首页编译时间,平均不到vue 2.6环境下的十分之一。

换言之,vue 3.x版本下的首页编译速度,相比vue 2.6版本,有十倍效率提升。

这个十倍效率提升,主要得益于新版采用Vite作为构建工具,由此带来了两大好处:

使用原生 ESM 文件,无需打包,实现极速的服务启动;

预览(运行)使用esbuild作为打包工具,相比vue 2.6环境下的webpack,构建速度快 10-100 倍(这不是我们夸大,详见esbuild)

本着这个十倍效率提升,小伙伴们还不赶紧上手试试?

小程序平台

对uni-app的三个模板项目运行到小程序平台,多次编译测试,并求其均值后,获得如下数据:

从上图对比数据来看,我们可以得出结论:小程序平台,vue 3.x版本下的运行编译,相比vue 2.6版本,编译性能至少提升30%;且项目越复杂,编译性能提升越明显,可以达到40% ~ 50%。

App平台

对uni-app的三个项目模板继续运行到App平台,多次编译测试,并求其均值后,获得如下数据:

从上图对比数据来看,我们可以得出结论:App平台,vue 3.x版本下的运行编译,相比vue 2.6版本,编译性能提升将近50%。

虽没有H5平台的十倍效率提升那么刺激,但将近50%的速度提升,经常开发小程序/App的小伙伴,还不心动?

业内优秀框架横向对比

除了采用不同版本的uni-app进行纵向对比外,我们还使用业内优秀的跨端框架Taro,创建空的项目模板,进行横向对比测试。

具体测试方案:

安装Taro的最新cli,本文测试时使用的版本为"@Tarojs/Taro": "3.3.16"

使用Taro init命令,分别选择react、vue、vue3框架,创建三个默认项目模板,三个项目名称分别为taro3-react、taro3-vue、taro3-vue3,如下图:

使用npm run dev:h5,运行到H5平台进行预览,记录每次预览编译时间,重复执行,求其均值

关于Taro编译时间的计算方案:

开发一个Taro扩展插件,插件规范参考Taro官网 - 插件功能

在ctx.onBuildStart中记录开始编译时间

在ctx.onBuildFinish中记录编译结束时间

两者的时间差,即为编译过程消耗时间

然后使用uni-app的cli命令行,创建基于vue3.x的空项目模板,项目命名为uni-app-vue3。

我们使用各自框架的命令行,将如上创建的5个项目分别编译到H5平台和小程序平台,多次测试,并求其均值。

同框架版本在H5平台上的编译时间,结果如下:

从图中可以看出,uni-app的vue3版本,在H5平台上的首页编译预览性能是遥遥领先的。这个遥遥有多远呢?这么讲吧,你都编译20次了,友商第一次还没完呢。

继续编译到小程序平台,多次测试,求其均值,结果如下:

从图中可以看出,uni-app的vue3版本,在小程序平台上的编译性能也是遥遥领先的,这个遥遥也不近。

更好的运行速度

开发环节编译快了,那面向最终用户的软件,运行性能怎么样?

我们进入性能测试章节。

测试方案:

开发内容:开发一个仿微博小程序首页的复杂长列表,支持下拉刷新、上拉翻页、点赞。

界面如下:

测试机型:小米 Mi 10 pro、MIUI 12.5 (21.11.3 开发版) 、微信版本 8.0.16

准备工作:每次开始测试前,杀掉各App进程、清空内存,保证测试机环境基本一致;每次从本地读取静态数据,屏蔽网络差异。

评测点:长列表中的某个组件,比如点赞组件,点击时是否能及时的修改未赞和已赞状态?

测试计时方式:

选中某微博,点击“点赞”按钮,实现点赞状态状态切换(已赞高亮、未赞灰色),

点赞按钮 onclick函数开头开始计时,setData回调函数开头结束计时;

在小米手机上进行多次测试,求其平均值,结果如下:

记录条数 200 400 600 800 1000

vue2 30ms 43ms 56ms 72ms 90ms

vue3 8ms 9ms 9ms 8ms 9ms

从表格中可以看出:

随着页面记录的增加,vue 2.6版本的uni-app项目,点赞组件响应时间快速增加,响应越来越慢;

基于vue 3.x的uni-app项目,点赞组件的响应时间跟页面条数无关,一直保持极高的响应灵敏度,性能体验远高于vue 2.6版本。

从这个常见的长列表组件响应实验来看,vue 3.x的性能体验要远高于vue 2.6版本。

更小的代码体积

项目发行后的代码体积,是一个很重要的考量指标:

H5平台:更小的代码体积,可以帮助开发者节省服务端带宽及CDN流量,可实现更快的资源加载及页面渲染;

小程序平台:更小的代码体积,可加速小程序包的下载(甚至可能免了分包加载的繁琐),帮助用户更快进入小程序业务界面;

App平台:更小的代码体积,可实现更快的App启动,帮助用户更快进入App首页

为了测试vue 3.x新版升级后,代码体积的变化,我们同样做了两个维度的测试:

纵向对比:选择uni-app常用项目模板,在H5、小程序、App平台,分别测试vue 2.6和vue 3.x的编译包大小

横向对比:使用业内优秀的其它跨端框架,创建默认项目模板,记录其编译后的包体积大小,和uni-app版本进行对比

Tips:

开发阶段重在编译速度,对应npm run dev操作

发行阶段重在编译包大小,对应npm run build操作

uni-app 不同版本纵向对比

我们复用之前创建的uni-app默认模板、uni-starter、hello-uniapp三个项目模板,分别测试vue 2.6和vue 3.x的编译包体积。

uni-app项目编译包体积的采集方式:编译到对应平台后,记录编译后文件夹的大小。

H5平台

H5平台编译后代码体积记录如下:

从统计结果来看,uni-app的vue3.x版本,在H5平台上的编译包体积至少瘦身30%以上。

H5平台的瘦身优化,主要得益于uni-app框架的底层全面重构,实现了更彻底的摇树优化。

小程序平台

小程序平台编译后代码体积记录如下:

从统计结果来看,uni-app的vue3.x版本,在小程序平台上也有大幅瘦身。

uniapp开发出来的与专业工具开发出来的有区别吗

有区别。

uniapp是一个开放的、支持多种开发工具的多端开发框架。HBuilderX和uniapp,同属一乱烂个公司,即DCloud出品。HBuilderX团队为uniapp做了大量的优化和定制。当然uniapp团队也为其他开发工具枣茄提供了良好的支持,尤其是对vscode,比其他多端框架做的更多。

uniapp是一个使用Vuejs开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web、以及各种小程序、快应用等多凳陪察个平台。

怎样评价uni-app?

前端最火热的话题无法就是flutter,不管是刷哪个论坛脊改,必定有探讨flutter的文章。没用过flutter,但是对于跨平台的技术,我一直都在研究。

为什么是uni-app

之前一直在找解决跨平台的方案,尝试了很多方案,比樱竖判如滴滴的变色龙,但是最终还是选择了uni-app,这里附上uni-app的官网。为什么会选择它呢,第一,vue语法,学习成本低,上手速度快,只要之前你做过vue的项目,那么就能很快上手,其实是vue和微信小程序的结合体,一半vue,一半微信小程序。第二,长期维护,之前做微信小程序的时候,选择了美团的mpvue,但是后面发现长期不维护了,提了Issues也没人理,随之就放弃了,而uni-app长期在维护,这样看出了开发团队的用心。第三,跨平台的能力,uni-app能够跨多个终端,H5,安卓,Ios,微信小程序,百度小程序,头条小程序,支付宝小程序,真正实现了一套代码,多端运行,而且很好适应了我国的市场。第四,日益丰富的插件市场,uni的插件市场也在日益强大,能够基本上满足我们平时的开发需求。

uni-app的组件有原生调用能力,第三方的vue库在调原生接口时跟 5+runtime 不兼容。就像nativescript 有vue版和angular版,类似于react native , 都是起源于phonegap/cordova

实际开发效果遵义小红椒纤圆 做了一款app,打包了安卓,Ios,微信小程序3个平台,产出的效果都还是不错,总体还是比较满意。而且打包过程也很方便简单,配套的HBuilderX自动内置了打包功能,所以也省去了打包的烦恼。

遵义小红椒 建议

如果你现在想做一款跨平台的产品,而且有vue和微信小程序的经验,最重要的,你不想学习一门新语言,那么uni-app也许是你的一个选择。

uniapp开发框架怎么样的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于uniapp框架搭建、uniapp开发框架怎么样的信息别忘了在本站进行查找喔。

扫码二维码