Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Flutter正在悄悄击败React-Native?

Flutter正在悄悄击败React-Native?

作者头像
童欧巴
发布于 2021-08-20 10:26:41
发布于 2021-08-20 10:26:41
1.3K00
代码可运行
举报
文章被收录于专栏:前端食堂前端食堂
运行总次数:0
代码可运行

React-Native与Flutter

事情是这样的,由于最近想做个APP,于是我考虑下技术选型,便在gitHub看了看,于是发现了一个让我惊讶的点:

React-native仓库

Flutter仓库

可以看到,FLutterStar数量默默的大幅超越了React-Native

感觉近期社区对于React-native和Flutter慢慢降低了关注度,很少有人写相关性质的文章了

对比招聘热度

  • React-Native:
    • 通过Boss直聘的url传参测试,深圳地区的React-Native招聘数量为9页
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
https://www.zhipin.com/c101280600/?query=react-native&page=9&ka=page-9
  • Flutter:
    • 通过Boss直聘的url传参测试,深圳地区的Flutter招聘数量为8页
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
https://www.zhipin.com/c101280600/?query=Flutter&page=8&ka=page-8

招聘热度:不相上下


大厂招聘

  • react-native
  • Flutter
  • 两者不相上下

gitHub生态

  • react-native关键字搜索:259K的仓库数量
  • flutter关键字搜索:275K的仓库数量
  • 说react-native生态比flutter成熟很多的同学们要注意,可能这句话目前要打个问号了

我的综合考虑

  • 学习flutter的成本在于使用dart语言,其实成本也不算很高,只是放在我身上去学习,性价比不高
  • flutter的国内标杆产品在周边朋友反馈普遍存在一些体验上和交互上、兼容性的问题
  • 由于需要快速兑现试错,最终选择react-native作为技术栈选型

在一个产品初期,应该快速兑现产品需求,看市场响应如何再做下一步的打算

react-native环境搭建(mac电脑)

  • 准备工作
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
brew install node
brew install watchman
npm install -g yarn
yarn config set registry https://registry.npm.taobao.org/
  • 电脑安装xcode
  • 电脑安装模拟器
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo gem install cocoapods
  • 初始化项目
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
npx react-native init AwesomeProject
  • 启动项目
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cd AwesomeProject
yarn ios
  • 如果中途遇上homebrew在updating...,百度下可以找到处理方法,搭建环境还是很快的,就是执行pod install时候记得要开梯子
  • 这样一个简单的react-native项目就搭建好了

如果遇到环境上的问题可以公众号后台或者微信私聊我

学习flutter的正确姿势

  • 官网:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
https://flutterchina.club/
  • Mac环境安装
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
https://flutterchina.club/setup-macos/
  • 按文档实操(有些大佬吐槽文档烂,可是恰恰反应出一个点,说明大佬也看了文档,而且都认真看了,所以小白更应该认真看,不然怎么知道烂?)

两者的区别

  • 这篇文章就写得很好,两者的区别,这里搬一些过来,就不重复写了,如果要深度对比,可能又是一个长篇大论
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
https://www.jianshu.com/p/da80214720eb
  • 数据的一些对比:
  • 原理的对比(最重要):
    • React Native 是一套 UI 框架,默认情况下 React Native 会在 Activity 下加载 JS 文件,然后运行在 JavaScriptCore 中解析 Bundle 文件布局,最终堆叠出一系列的原生控件进行渲染。
    • 简单来说就是 通过写 JS 代码配置页面布局,然后 React Native 最终会解析渲染成原生控件,
  • Flutter 中只需平台提供一个 Surface 和一个 Canvas ,剩下的 Flutter 说:“你可以躺下了,我们来自己动”。
  • Flutter 中绝大部分的 Widget 都与平台无关, 开发者基于 Framework 开发 App ,而 Framework 运行在 Engine 之上,由 Engine 进行适配和跨平台支持。这个跨平台的支持过程,其实就是将 Flutter UI 中的 Widget “数据化” ,然后通过 Engine 上的 Skia 直接绘制到屏幕
  • 剩下的请看上面推荐的文章

虽然我选了React-native,但是你们不一定

  • 以前的我很排斥Flutter,但是事到如今,我们用数据说话,它已经被大众接受,而且可能范围比react-native更广,如果条件允许,你们可以使用flutter

顺便说一点

  • 不要学我,看我整篇文章react-nativeflutter一会大些一会驼峰,要规范命名(主要是Mac键盘难用你们懂的~)
  • 如果不规范大小写命名,就会遇到下面这个情况
  • 我已经遇到很多同事和粉丝问我,为什么我在本地构建没问题,一上服务器就失败,找不到文件名啊~ 那是你大小写不规范,不同操作系统的规则不一样,最终构建的结果也不一样,所以推荐使用react-native这种来命令,而不是大小写

题外话

  • react-native和flutter的争斗可能要进入到vue和react这样的pk级别了
  • 上周的公众号投票,将近400人投票,最终react微小的优势获胜,这说明两个框架国内都用得很多,虽然我是react的疯狂爱好者,但是我也喜欢vue的作者,这并不冲突
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-08-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端食堂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Flutter正在悄悄击败React-Native
事情是这样的,由于最近想做个APP,于是我考虑下技术选型,便在gitHub看了看,于是发现了一个让我惊讶的点:
Peter谭金杰
2022/03/22
8960
Flutter正在悄悄击败React-Native
hybrid、react-native、weex和flutter的简单理解
移动端跨平台开发从最初的hybrid到react-native、weex,再到最近Geogle新推出的flutter移动UI框架,体验和性能越来越接近原生应用。
zhangjiqun
2024/12/16
2710
为何有人会喜欢Flutter?Flutter 的好与坏
如下图,今天在知乎收到了这样一个问题:“为什么有人喜欢 Flutter ?”,相信对于刚刚接触 Flutter 的人可能都会有这样的疑问。 Flutter 最有价值的点不是它的语言,也不是它的代码设计模式,是它的跨平台。 Flutter 的跨平台不同于 weex、react-native ,它核心是跨平台的优秀设计。以前的应用跨平台框架都需要依赖原生平台的控件,比如: react-native 的 <View> 标签需要转化为 Android 平台的 ViewGroup 控件,然后实现渲染。 但是 Flu
博文视点Broadview
2023/05/19
6120
为何有人会喜欢Flutter?Flutter 的好与坏
最火移动端跨平台方案盘点:React Native、weex、Flutter
跨平台一直是老生常谈的话题,cordova、ionic、react-native、weex、kotlin-native、flutter等跨平台框架的百花齐放,颇有一股推倒原生开发者的势头。
JackJiang
2018/08/13
7.9K0
最火移动端跨平台方案盘点:React Native、weex、Flutter
我不认为Flutter比React Native好
Jamon Holmgren 是一家软件开发公司的创始人兼 CTO,拥有超过 25 年的编程经验,同时也是 React Native 的核心成员,维护着几个开源库。在这篇文章里,他试着尽可能公平地从多方面去讨论 Flutter 和 React Native 的优劣势。本文仅代表他个人观点,希望能为读者带来收获。
深度学习与Python
2022/03/22
3K0
Carson带你学Android:手把手带你入门跨平台UI开发框架Flutter
Flutter理念:“一切皆为Widget”,Widget是Flutter应用程序用户界面的基本构建块,具备以下特点:
Carson.Ho
2022/03/24
8950
Carson带你学Android:手把手带你入门跨平台UI开发框架Flutter
Flutter vs React Native,谁才是跨平台应用开发的最佳利器?
随着移动应用的需求越来越大,许多企业开始将焦点转移到移动应用的开发上。通过引入新技术、新平台和新框架,移动应用开发者能够创建划时代的移动应用。
Android技术干货分享
2019/03/26
2.9K0
Flutter vs React Native,谁才是跨平台应用开发的最佳利器?
React-native - Install & Lauch & Filling Holes
Mitchell Install First step: install react-native: //Make sure you have npm, if not install it. brew install npm //Install create-react-native-app npm install -g create-react-native-app //Install react-native-cli npm install -g react-native-cli --
Mitchell
2018/09/30
6240
React-native - Install & Lauch & Filling Holes
【Flutter】Flutter 混合开发 ( Flutter 与 Native 通信 | 在 Flutter 端实现 EventChannel 通信 )
EventChannel 一般用于持续的通信 , 如 : 将 Android 应用中采集的陀螺仪 , GPS 等信息 , 持续的发送给 Flutter 应用 ;
韩曙亮
2023/03/29
1.6K0
React-Native实践
随着React-Native的火爆,以及Native和Web开发本身的一些痛点,近期团队考虑将iOS App中部分界面迁移到React-Native上,本文主要谈谈开发过程中遇到的一些问题及解决方案。
IMWeb前端团队
2019/12/03
1.2K0
逻辑-Flutter专栏-它来咯!!!
Flutter 相信大家已经不再陌生了! 在 2018-2020 无论从实际开发到面试,Flutter已经走入移动开发 (Android / iOS),本人针对 Flutter 的表现,真心觉得 Flutter 有必要真正掌握。
CC老师
2021/01/06
6220
逻辑-Flutter专栏-它来咯!!!
全网最全 Flutter 与 React Native 深入对比分析
作为 GSY 开源系列的作者,在去年也整理过 《移动端跨平台开发的深度解析》 的对比文章,时隔一年之后,本篇将重新由 环境搭建、实现原理、编程开发、插件开发、编译运行、性能稳定、发展未来 等七个方面,对当前的 React Native 和 Flutter 进行全面的分析对比,希望能给你更有价值的参考。
GSYTech
2019/06/21
9.7K1
全网最全 Flutter 与 React Native 深入对比分析
【Flutter】Flutter 混合开发 ( Flutter 与 Native 通信 | 在 Flutter 端实现 MethodChannel 通信 )
MethodChannel 简介 : MethodChannel 通道用于方法调用 ;
韩曙亮
2023/03/29
1.1K0
react-native
最近一直在做app的业务, 那么在选择采用什么去做app的时候, 可以考虑的有hybrid, react-native, flutter, 我首先没有考虑的是混合开发, 混合开发可能是对我而言开发效率最快的。由于我个人原因我没有选择。 那么flutter我考虑到, 它的年龄还太小, 社区相对于react-native不是那么的繁荣, 而且我看了下它的语法(dart), 感觉跟js没有什么关系。综上我最终选择了react-native, 但是万万没有想到, 有那么多的坑。关于坑的事情, 先按下不表。
用户9298250
2021/12/29
1.5K0
xcode工程集成 React-native步骤
跟着网上博客步骤来集成RN发现了很多坑,但是博客内容里面却没有记录这些坑,百度了很久都没找到解决方案,最后还是在谷歌搜索里面的一篇文章找到解决办法,在此记录下方便别人快速集成RN。
conanma
2021/11/02
2.7K0
再谈移动端跨平台框架 Flutter 与 React Native
这几年在大前端的开发领域,选择跨端方案的公司和部门越来越多,一方面是跨平台的前端框架越来越成熟,另一方面也是因原生开发者正逐年减少。所以,在当下掌握一门跨平台的技术栈还是很有必要的,无论从广度还是从深度都会有所帮助。
做个快乐的码农
2021/12/29
2.4K0
再谈移动端跨平台框架 Flutter 与 React Native
【Flutter】Flutter 混合开发 ( Flutter 与 Native 通信 | Android 端实现 BasicMessageChannel 通信 )
本博客与 【Flutter】Flutter 混合开发 ( Flutter 与 Native 通信 | 在 Flutter 端实现 BasicMessageChannel 通信 ) 博客相对应 , 该博客中开发 Flutter 的 Dart 端 ;
韩曙亮
2023/03/29
2.1K0
【Flutter】Flutter 混合开发 ( Flutter 与 Native 通信 | Android 端实现 BasicMessageChannel 通信 )
【Flutter】Flutter 混合开发 ( Flutter 与 Native 通信 | 在 Flutter 端实现 BasicMessageChannel 通信 )
这是一个命名通道 , 用于 Flutter 端 与 Native 端的消息传递 ;
韩曙亮
2023/03/29
3.1K0
【Flutter】Flutter 混合开发 ( Flutter 与 Native 通信 | 在 Flutter 端实现 BasicMessageChannel 通信 )
React Native简介和环境配置
           Facebook于2015年9月15日发布React Native,广大开发者可以使用JavaScript和React开发跨平台移动应用,React Native提倡组件化开发,即提供一个个封装好的组件,然后组件相互嵌套形成新的组件。
星宇大前端
2019/01/15
1.7K0
【Flutter】Flutter 混合开发 ( Flutter 与 Native 通信 | Android 端实现 MethodChannel 通信 )
本博客与 【Flutter】Flutter 混合开发 ( Flutter 与 Native 通信 | 在 Flutter 端实现 MethodChannel 通信 ) 博客相对应 , 该博客中开发 Flutter 的 Dart 端 ;
韩曙亮
2023/03/29
9830
推荐阅读
相关推荐
Flutter正在悄悄击败React-Native
更多 >
交个朋友
加入架构与运维工作实战群
高并发系统设计 运维自动化实践
加入前端趋势交流群
追踪前端新趋势 交流学习心得
加入架构与运维趋势交流群
技术趋势前瞻 架构演进方向
换一批
领券
一站式MCP教程库,解锁AI应用新玩法
涵盖代码开发、场景应用、自动测试全流程,助你从零构建专属AI助手
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档