现在跨平台开发不是新鲜事了,各个跨平台框架都已经百花齐放,各有千秋。2021都有哪些跨平台框架值得推荐呢?这篇文章就不说石器时代的开平台框架了,当然不靠谱的也不说了,只说能用的

1. Ract Native(FaceBook出品 社区强大 JScore+原生组件渲染)

适用于:B/S技术栈程序员 react开发经验 有一定SDK集成经验
        首先要说的是React Native(RN),我本人比较喜欢。程序员写react组件编译成原生组件渲染,jscore执行js程序。要学习RN你要先学会react,react是率先提出虚拟DOM概念的,后续vue等框架开始模仿,正因为虚拟DOM的概念太过强大和超前,导致它不受平台限制,从而衍生了RN,它的背后也是大厂支持facebook。说它凉了都是谣言,大家放心学习即可。

它的原理是通过react的方式可开发APP,它可以把我们用JS写的组件,编译成原生组件,RN不是H5应用或是webapp,但是和原声APP还是有区别的,因为多一个jscore层执行js。由于能编译成原生组件因此RN用户体验还是很不错的,小公司追求效率可以选择,但是RN毕竟是一个APP UI的解决方案,如果你的APP需要集成复杂SDK的话,劝你还是选择原生开发。

目前它的生态已经非常完整完善,你不必担心你的APP太过复杂它不能实现的问题,因为它可以和原生无缝衔接配合【与原生混合开发】,随时呼叫原生支援。

那么它的性能如何呢?有的人对于性能问题纠结不放,实话说;它和原生肯定还是有差距的,毕竟中间多个JS层,js是基于jscore运行的,性能不会太差,但是一般APP用户根本无法察觉其中的差距。没有垃圾框架只有垃圾程序员,如果你的APP不需要处理音视频、处理复杂数据、或者你要做比较吃性能的工具型APP的话,我们完全可以用技术弥补一些性能差距,所以不必在意那些微乎其微的性能差距,比较建议前端reacter学习和使用。

 适用场景:可用于中大型APP开发,跟原生开发配合,RN主要用于开发业务,而原生用于扩展赋能,需要的人才质量高,招聘难度较大,性能问题不大,介于webview和原生之间,不适合太吃性能的APP开发。

2. Uni-app(国产 零学习成本 社区强大 外包利器)

适用于:Vue技术栈 零学习成本 快速交付用

        第二个要说的是国内很火的uniapp,编译成原生组件结合webview渲染方式,V8和jscore执行js程序【安卓使用v8 、IOS使用jscore】,号称有370W开发者,在国内很火。它背后的公司是国内的dcloud【国内前端之光】,技术栈是基于vue的。react在国际上很火,但是在国内;不好意思!vue已经是大哥了。

         可以说dcloud把vue玩的很透,基本可以说是国内vue用的最6的公司,uniapp的优点是能够一次编写编译APP和小程序端全覆盖,对于国内程序真的是福音,它的优势在于成本低(学习成本低、开发成本低)。

uniapp结合了weex的概念推出了nvue,它的原理在于能把web组件编译成原生组件,跟RN有些相似的想法。但是uniapp开源程度不够,现在选择它的都是一些小公司或是外包公司。

uniapp提供了很多与原生/小程序交互的“桥”,目的在于让你无脑开发即可,我们可以轻松开发例如微信支付、蓝牙、分享、定位、推送等,而且uniapp上架商店是完全合规没有风险的,有人说它是基于webview的,性能是个问题,我本人体验了一下和亲身用过uniapp开发,认为uniapp是做过很多优化的,比我们自己套个壳子用的webview用户体验要好很多(小公司不推荐套壳开发),高频页面可以用nvue开发,效果更好,如果我们前期开发为了快速上线,完全可以选择uniapp,非常符合国内的国情,为国内程序员提供了很大的福利,vue技术栈的同学可以学习掌握。

适用场景:企业快速开发引流,适合中小型APP开发,不适用于集成三方SDK多的APP,不适合开发大型高质量高性能APP,人才好招聘,Vue基础好就行,平滑过渡。

3. Flutter(Google出品 性能强劲 噱头满满)

适用于:对APP质量要求高 开发人员最好是原生开发 B/S程序员不推荐(学习成本高)
        第三个要说的是flutter,flutter是google推出的,开发基于dart语言,属于强类型的解释性语言,Dart之前是为了跟js抗衡出现的,但是结果可想而知,js虽然设计的有缺陷,但是也有其优势不是那么容易打败的【个人感觉flutter选择JS的话 早火了】。
        如今dart在flutter打了个翻身仗,flutter自称能达到60帧,渲染也有自己的引擎,性能完全可以跟原生媲美,我也用过一段时间,推荐原生APP开发的同学学习,但如果你是web前端开发人员其实没必要涉猎,因为跟前端关系并不大了【这个不用犟 自己品】,flutter开发web还是有点不成熟的,我也相信flutter不能取代web领域。

flutter跟RN一样是UI的解决方案,它的开发对于前端程序员来说可能不太适应,感觉就像是在套娃,好的是它有热重载,开发效率会提成一大截,编译成安卓ios都是原生代码,中间没有中间层,是彻底脱离JS的,相当于没有中间商赚差价,因此性能更佳,对于追求绝对品质和性能的同学可以学习,但是我个人理解flutter不会走的太远,因为它脱离了不太完美但是很普遍的前端程序员。

适用场景:因为flutter跟原生基本无异,任何场景都很适合,成本偏高,人才招聘难度最大,适合CS程序员学习,BS程序员学习成本较高。

当然跨平台的框架很多,它们三个只是代表,它们无非是webview派,代表的uniapp、Cordova。

第二种是编译成原生组件,通过JS作为桥的:RN、weex、uniapp(nvue),

还有就是编译成原生派,没有中间商的flutter等,根据自己的实际情况选择即可,但我要说的是,我们要能用好框架才是最重要的,好的程序员用H5 套个壳子也能做出媲美原生的APP,而有的程序员用原生也不能弥补技术的差距。因此选择自己和团队擅长的才最重要。

4. Taro(京东出品 react/vue技术栈都可用)

基于京东-凹凸实验室,技术栈:vue/react,对React更友好一些,对Vue的支持是后出现的,能编译成H5、小程序、APP(编译成RN代码)。Taro搞个小程序还是完全OK的,至于APP嘛~~ 我只能说您悠着点,有勇气的可以试试。

5.  Electron VScode的技术栈 桌面开发不二选择

它是基于BS开发电脑桌面的框架,大名鼎鼎的VScode就是用它开发的(当然是微软团队开发的),现在已经成为前端人员开发桌面应用的首选没有之一。

持续更新,欢迎留言

最新前端跨平台框架推荐,跨平台开发框架选择指南相关推荐

  1. 【前端UI框架推荐】六个前端[web端]精致UI框架

    众所周知,对于一个完整web项目,前端的代码量应该是比较巨大的,因为需要写大量的html,css,以及一些常用的功能组件.对于一个不太需要自成样式的项目来说,很多代码量其实是可以大大减少的,除了Boo ...

  2. 移动端前端UI框架推荐

    本文链接:https://blog.csdn.net/wangyile4399/article/details/102564106 SUI Mobile   http://m.sui.taobao.o ...

  3. 前端UI框架选择区别对比推荐

    UI选择务必慎重,货比三家. 弱水三千只取一瓢:弱水三千只取一瓢,源起佛经中的一则故事,警醒人们在一生中可能会遇到很多美好的东西,但只要用心好好把握住其中的一样就足够了 老牌构建于jQuery框架之上 ...

  4. [译]哪个跨平台框架才是最好的选择?React Native、Flutter 还是 Ionic

    关注 前端瓶子君,回复"交流" 加入我们一起学习,天天进步 原文地址:React Native vs. Flutter vs. Ionic 原文作者:Sophia Martin 译 ...

  5. 腾讯团队开源前端跨框架跨平台框架Omi

    Omi – 前端跨框架跨平台框架 基于 Web Components 并支持 IE8+(omio),小程序(omip) 和 任意前端框架集成 Github star 9.2K+, MIT协议. 特性 ...

  6. Omi - 前端跨框架跨平台框架

    Omi - 前端跨框架跨平台框架 基于 Web Components 并支持 IE8+(omio),小程序(omip) 和 任意前端框架集成 Omi 生态 → Omi 生态学习路线图 基础生态 项目 ...

  7. .NET跨平台框架选择之一 - Avalonia UI

    本文阅读目录 1. Avalonia UI简介 Avalonia UI文档教程:https://docs.avaloniaui.net/docs/getting-started 随着跨平台越来越流行, ...

  8. 跨平台桌面应用的开发框架——Electron

    一.背景 在团队中,我们因业务发展,需要用到桌面端技术,如离线可用.调用桌面系统能力.什么是桌面端开发?一句话概括就是:以 Windows .macOS 和 Linux 为操作系统的软件开发.对此我们 ...

  9. 前端Js框架 UI框架汇总 特性 适用范围 选择

    身为一个资深后端工程师,面对层出不穷的前端框架,总让人眼花缭乱,做一个综合解析贴,从全局着眼,让我们明白各种前端框架的应用范围,为如何选择前端框架,从不同的维度提供一些线索,做为一个长期优化贴,欢迎指 ...

最新文章

  1. Waiting for target device to come online
  2. Spring Security 和 Shiro 该如何选择?
  3. python中的tkinter_基于python中tkinter的计算机实现
  4. vue项目+富文本编辑器ueditor - 资源篇
  5. React Native 画虚线 DashLine
  6. python 实现 熵值法 确定指标权重
  7. 【频率计】基于ISE+VHDL编程的多功能数字频率计
  8. 微信服务号添加小程序
  9. 利用爬虫获得疫情信息,并存入表格
  10. “霜降”,“农历”,“二十四节气”,英语怎么说?
  11. 计算机上机模拟试题答案,[计算机类试卷]国家二级VB机试(上机操作)模拟试卷420及答案与解析.doc...
  12. matlab表示网络,Matlab绘制网络
  13. 聚齐乐服务器维护时间多久,9月19日服务器例行维护更新公告(已完成)
  14. centos7 安装拼音输入法
  15. 2013年MBA、MPA、MPAcc入学考试综合能力辅导教材
  16. datagrip连接sqlserve发生[08S01] 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接
  17. Vijos - 文化之旅(最短路)
  18. 系统维护常用命令及工具
  19. 元数据管理工具Atlas学习笔记之集成
  20. liunx系统中的盘符能修改嘛_WIN10修改盘符怎么更改

热门文章

  1. eva新世纪福音战士_【新世纪福音战士EVA合集】新世纪福音战士EVA游戏大全-ZOL游戏库...
  2. mysql gmt格式_将MySQL数据库时区设置为GMT
  3. Python 使用 twitter API 获取twitter用户信息
  4. cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第三步---编辑器(2)---更方便更多操作更像编辑器
  5. 计算机网络的前沿技术和热点问题,中国信息技术十大前沿热点问题
  6. 递推算法与递推套路(算法基础篇)
  7. RabbitMQ的第一次亲密接触
  8. LC417.太平洋大西洋水流问题
  9. 案例:同程凤凰缓存系统基于Redis的设计与实践。
  10. Xshell Error Report,Program has stopped working