洞察企业如何通过FinClip提升跨平台小程序加载效率,适应多样化市场需求
4164
2023-01-23
本文目录一览:
这一周继续聊跨平台桌面开发这个事情。
在这篇文章中,我暂时会放下Electron与WebView2的一个对比,而聊一聊跨平台这个对于程序员群体来说不陌生的词。
一个趋势是:跨平台开发几乎是在各个技术方向都会持续发展的
跨平台这个词,对于程序员来说,应该是不陌生的。因为这个概念不只在某一端存在,后端,前端,移动端,桌面端几乎所有方向都对跨平台有需求。
在后端,Java是跨平台的,当你用Java来编写后端服务时,并不需要考虑操作系统,因为它几乎支持主流的操作系统。现在,编写一个后端服务,选用Java仍是主流。虽然可能它的跨平台特性已经不是程序员最在意的点了。
而在移动端,类似React Native,Flutter也是非常有名的跨平台移动开发,它们与移动原生开发方式之间一直是竞争与共存。
而前端因为依托于浏览器,天然就是跨平台的。事实上,很多应用或服务早期纷纷选择从原生应用迁移至前端WEB方式的一个非常重要的原因就在于它是跨平台的。
桌面操作系统很长一段时间一直是Windows一家独大,所以桌面开发一直是Windows独占,直至现在为止,很多专业级的软件仍然是Windows独占的。
而Linux桌面操作系统与MacOS桌面操作系统,早些年几乎可以忽略不计,压根不需要考虑这两种系统。但随着近些年它们的慢慢流行,特别是苹果的MacOS的以其杰出的工艺,流畅的体验,叠加苹果手机的流行,其市场份额增长非常之快,在特定的诸如编程,设计等行业人群中使用范围较广,这使得开发支持MacOS系统这个点变得越来越重要。
所以,在桌面开发领域,跨平台的需求也越来越高。
这也是Electron及早期的NW.js能迅速发展起来并得到非常广应用的原因所在。
无论是哪一端,跨平台技术之所以频繁出现与不断发展,其根本原因就在于编程的一个重要痛点在于:
为了让同一个服务能在所有设备上运行,程序员不得不编写与维护非常多不同版本的程序
每一个程序或软件后面的服务,都有一个非常迫切的需求,就是期望它的用户无论何时,无论何地,无论使用任何设备,都能方便友好的使用这个服务。
也是因为这个原因,Web发展起来了,因为Web的优势就在这,只要你的设备上有浏览器,就能访问。
但Web毕竟性能有限,且浏览器这种形式并不利于用户忠诚度的培养,它存在天然的弱点。一些简单的操作服务使用Web并无问题,但稍微有点要求的,Web可能就并不是非常适合。
所以,一种趋势不可避免地流行起来:
对不同设备或系统进行抽象,基于某一种特定的编程语言,编写出能与原生程序相媲美的,又能跨平台的技术便层出不穷了
对吧,Java是使用JVM来抽象不同的操作系统,React Native则是使用虚拟DOM以及转换成原生控件的方式来实现跨平台,而Electron则是通过性能较好的Chrome内核+NodeJS原生调用能力的搭配来实现跨平台桌面开发。
总而言之,这种跨平台的技术不会消亡,只会有新的技术层出不穷,而它们与原生开发一定是相互竞争,配合与共存的。相互之间无法取代。
那再回到跨平台技术上来说,一个良好的跨平台开发的技术或框架,重点是什么。
或者换种方式说,哪些特性使得它更易于流行起来?
我个人认为有以下的几个点:
跨平台开发技术能不能流行起来的一个非常重要的点就在于,使用了什么样的编程语言。
以移动端跨平台开发技术来说明,一个React Native,一个Flutter,这两个是比较知名主流的跨平台移动开发技术。React Native使用的是前端React技术,而Flutter则是Google的D语言。
显而易见的是,虽然Flutter是使用skia引擎在底层重绘一套UI,其性能相比React Native这种模式更佳,但React Native更易于被接受。
在流行度上,React Native始终比Flutter更流行,一个最重要的原因也在于:
使用已熟知的前端编程语言,比起重新学习一个D语言更易于被接受,维护成本更可控。
这个问题在跨平台桌面开发中也是类似,跨平台桌面开发技术也不是Electron最开始出现,比如著名的QT很早就有了,但比起Electron这种使用前端编程技术来说,显然在编程语言的门槛上和程序员群体上都存在困难,这也是Electron能后来居上的原因所在。
因为,大多数程序员群体,相比较另外学习一门什么语言去做什么,使用自己熟悉的语言来做什么是更容易,意愿也更高。
而从公司或团队的考量上看,选择偏门的小众语言存在成本上的顾虑,比如人员招聘是否容易?
跨平台技术在尝试解决不同平台不一致,它或多或少会损耗性能。这也决定了几乎没有任何一个跨平台技术能取代原生开发。
这是一个取舍的问题,对于一个程序来说,究竟性能有多重要。对于比较看重性能的程序来说,原生开发可能是最优选择。
但跨平台的性能损耗也有高低之分,并不在同一水平线上。
其实,无论是Electron,或是WebView2,都是基于浏览器内核+前端技术的跨平台桌面解决方案,这也是为什么要把它们放在一起聊的原因。
Electron是先行者(当然,严格说来,NW.js出现的更早,但今天它的流行度已远远落后于Electron了),而WebView2则是后来者。
那做为后来者的WebView2究竟做了哪些改进?它又有多大的能力来挑战Electron呢?
下一篇,继续聊。
前端框架好不好用还是要看具体情况分析,我这里给你推荐几个常用的框架,可以按需使用。
1、vue-element-admin
一个基于vue2.0和Element的控制面板UI框架,这是使用vue技术栈开发的前端程序员的首选管理系统模板,模板已经非常成熟了,并且有相关的社区和维护人员,开发时候遇到问题也不要慌。
2、AdminLTE
非常流行的基于Bootstrap 3.x的免费的后台UI框架,这是一个非常老牌的后台管理系统模板,每个页面都是单独的html网页,适合前端入门新手用来做项目。
3、ant-design-pro
这个就不多说了,选择react技术栈的童鞋们必然离不开这个优秀开箱即用的中台前端/设计解决方案,文档齐全,组件丰富,一键生成模板,更支持开启复制粘贴模式哦。
4、ng2-admin
这是基于Angular 2、Bootstrap 4和webpack的后台管理面板框架,要收前面已经有了React和vue技术栈的模板,那怎么能少了ng的?虽然在国外用的比较多,国内较少使用,但丝毫不影响ng作为前端框架三巨头之一的地位。
5:Gentelella
Gentelella 是一个可免费使用的 Bootstrap 管理界面模版,使用群体比较广泛。这个模版使用默认的 Bootstrap 3的样式,还有一系列功能强大的 jQuery 插件和工具,可快速创建管理界面模版或者后台的 Dashboard。
6:iview-admin
iView admin 是基于 iView 的 Vue 2.0 控制面板。搭配使用 iView UI 组件库形成的一套后台集成解决方案 。
7:blur-admin
BlurAdmin 是一款使用 AngularJs + Bootstrap实现的单页管理端模版,视觉冲击极强的管理后台,各种动画效果。
8:vue-manage-system
vue-manage-system,一个基于 Vue.js 和 element-ui的后台管理系统模板,挺喜欢这个界面的UI,简约清晰不累赘,多功能的后台框架模板,适用于绝大部分的后台管理系统开发。
9:material-dashboard
基于 Bootstrap 4 和 Material 风格的控制面板。Material Dashboard 是一个开源的 Material
Bootstrap Admin,其设计灵感来自谷歌的 Material Design 。
10:d2-admin
D2Admin 是一个完全 开源免费 的企业中后台产品前端集成方案,基于 vue.js 和 ElementUI 的管理系统前端解决方案 ,小于 60kb的本地首屏 js 加载,已经做好大部分项目前期准备工作
11:vuestic-admin
vuestic-admin管理台仪表盘是一个响应式的仪表盘模板,采用Bootstrap4和Vue.js构建。这个精美的管理台模板提供了自定义元素组件,如地图,聊天,个人资料卡,图标,进度条等,以及用于登录和注册的预建页面。
推荐:
uni-app
uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、H5、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉)等多个平台。
即使不跨端,uni-app同时也是更好的小程序开发框架。
Taro
Taro 是一套遵循 React 语法规范的 多端开发 解决方案。
现如今市面上端的形态多种多样,Web、React-Native、微信小程序等各种端大行其道,当业务要求同时在不同的端都要求有所表现的时候,针对不同的端去编写多套代码的成本显然非常高,这时候只编写一套代码就能够适配到多端的能力就显得极为需要。
使用 Taro,我们可以只书写一套代码,再通过 Taro 的编译工具,将源代码分别编译出可以在不同端(微信/百度/支付宝/字节跳动/QQ小程序、快应用、H5、React-Native 等)运行的代码。
虽然现在vue、React和Angular很火桌面跨端开发框架对比,学习的人也越来越多,但是如果只是开发PC端项目,如果是一套比较成熟的技术方案,也未必不能用jquery。
这里推荐QUICK UI前端框架,QUICK UI不仅仅是一个前端框架,而是专门面向企业开发的一整套前端解决方案。包括基础开发框架、100多种功能强大的UI控件、几十套精美的皮肤模板和近16万字的开发文档。而且它也同样是前后端分离的开发方式(没错,即使不是数据驱动,jquery机制同样也可以做到前后端分离)
趁这个机会介绍一下QUICK UI的几个亮点吧。
1、它的表格组件一直被用户誉为jquery中最好的表格,拥有良好的性能和兼容,包括实现跨行跨列的复杂表格、树形表、父子表、即时编辑表格等近100项功能点
2、表单控件种类非常丰富,几乎囊括桌面跨端开发框架对比了所有常见的表单元素类型,能够充分满足企业级应用的表单开发方面。
3、大量的图形化组件。例如矢量地图
环形进度条
4、跟其桌面跨端开发框架对比他框架的一个很大不同点是,它不仅仅是一套组件库,还包含了丰富的皮肤模板。例如响应式web类型:
工作桌面类型
地图应用类型
5、最新版本中针对大数据的可视化展现方面,还推出了一系列的展示模板。
更多内容还是访问UI Leader 中文官网吧:http://www.uileader.com
关于桌面跨端开发框架对比和移动端跨平台开发框架有哪些的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 桌面跨端开发框架对比的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于移动端跨平台开发框架有哪些、桌面跨端开发框架对比的信息别忘了在本站进行查找喔。版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~