Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【移动架构】Flutter vs React Native:最后一句话。

【移动架构】Flutter vs React Native:最后一句话。

作者头像
架构师研究会
发布于 2022-03-08 08:41:42
发布于 2022-03-08 08:41:42
3.7K0
举报
文章被收录于专栏:超级架构师超级架构师

首先,有点离题。做出决定的最简单方法是回顾历史。让我们沿着怀旧之路走一趟。早在2000年初,JAVA就有两个UI框架。一个是AWT,它是一种为多个操作系统构建UI的方法,同时仍然保持操作系统的外观。

每个操作系统都有自己的组件,这些组件映射回使用AWT框架创建的AWT组件。

Java随后决定开发自己的渲染组件库Swing。Swing所做的是处理自己的渲染

依赖底层操作系统组件的风险。Swing得了这场战斗,不久AWT就从地球上消失了。

这有什么关系?我为什么要离题?

如果您一直在关注React Native vs Flutter 的辩论,您应该很熟悉这一点。React Native 组件被传输到IOS或android组件,而Flatter使用自己的渲染引擎(基于称为SKIA的2d渲染引擎)渲染自己的UI。(类似于游戏引擎自己进行渲染的方式)。它仍然依赖于材料设计(Android风格)和Cupertino(苹果风格)

小部件模仿本机平台像素完美的外观和感觉。如果我们回顾一下Swing与AWT之战作为参考,那么Flutter 可能会在这里获胜。

第一轮:Flutter

我又离题了,但传统上基于操作系统的开发是基于小部件的,而基于浏览器的开发依赖于模板和DSL。尽管WPF/Silverlight等异常试图将相同的模板机制(XAML)引入操作系统,但它们已经多次失败。

开发人员需要什么?

React Native有一个使用React Underthe hood的绝妙策略,它允许您转移现有的React开发者技能集。颤振使用Dart,这是一种新时代的语言,具有更陡峭的学习曲线(主观),尽管它是一种更好的UI开发语言。[6]

在“人才大战”和“大辞职”的时代[2],这比以往任何时候都更为重要,因为你不能指望雇佣最好的开发人员并让他们永远被占用。它比以往任何时候都更有意义保持你的技术堆栈精简,而不是分散在不同的技术。

第二轮:React Native

那么移动和网络上的通用代码库呢?

啊哈,圣杯。有两种方式来看待这个问题。React Native开始考虑利用React开发者技能集进行移动开发。在抽象屏幕和组件的同时,有一些简单的方法可以维护用于状态管理和行为的单个代码库。[5]

微软还发布了一个伟大的项目,允许您使用React Native for the web。[4]

另一方面,Flutter 将传输到web的JS。任何透明都是不好的,因为它是一个泄漏的抽象[3]。(记住GWT)。我对漏洞百出的抽象法则的推论是,你永远不应该选择一种可以转换成另一种语言的语言。

Flutter 还可能提供编译到web组装(WASM)的选项,允许在移动和web上使用通用的代码库。WASM将提供支持javascript以外语言的选项

未来在撰写本文时,WASM仍然存在SEO和性能问题,并且还没有为web产品做好准备。苹果承诺在safari中支持WASM。如果苹果足够体贴地为PWA提供全面支持,我们就永远不会做出选择。

尽管关于React Native和它的JS桥已经写了足够多的文章,导致了很多性能问题,但我相信这很快就会得到解决[1]

第三轮:React Native。可能是2022年

受欢迎程度如何?

截至11月11日,

github

Flutter 132K stars React Native 99.2K stars

Stackowverflow:

此外,谷歌的趋势率也比谷歌高。这可能是因为框架的新颖性

第四轮:没有明显的赢家。

开发人员的生产力如何?

有两种方式来看待这个问题。

JS根深蒂固。Dart是一个相对较新的语言(已经存在10年了),尽管它是一种更好的语言。使用react Native和我们的react技能,起步更快。

一旦您忽略了初始起飞时间,与React Native相比,Flutter上市更快。虽然这是有争议的,但由于每个平台可能需要进行性能优化,我还是让颤振占上风。

总而言之,由于Flutter在框架本身内置了许多开发人员友好性(部署、CI/CD、丰富的组件库、调试、IDE支持),所以它在这里绝对是一个赢家。尽管像Expo、react native paper和fastlane这样的第三方组件确实为react native提供了很多便利。

第五轮:一触即发

最后决定:

如果要利用现有的开发人员技能集,请选择React Native。在当前的人才争夺战中,当你不能总是吸引最好的人才时,这比以往任何时候都更加真实。

如果你想首先成为移动用户,那么就选择Flutter,并且不介意开发两次,一次用于移动,一次用于网络。(目前)而且你没有开发商或现金短缺。它将成为未来单一前端框架的选择。

本文

https://jiagoushi.pro/flutter-vs-react-native-last-word-2021

讨论:知识星球【首席架构师圈】或者加微信小号【cea_csa_cto】或者加QQ群【792862318】

公众号

【jiagoushipro】【超级架构师】精彩图文详解架构方法论,架构实践,技术原理,技术趋势。我们在等你,赶快扫描关注吧。

微信小号

【cea_csa_cto】50000人社区,讨论:企业架构,云计算,大数据,数据科学,物联网,人工智能,安全,全栈开发,DevOps,数字化.

QQ群

【792862318】深度交流企业架构,业务架构,应用架构,数据架构,技术架构,集成架构,安全架构。以及大数据,云计算,物联网,人工智能等各种新兴技术。加QQ群,有珍贵的报告和干货资料分享。

视频号

【超级架构师】1分钟快速了解架构相关的基本概念,模型,方法,经验。每天1分钟,架构心中熟。

知识星球

向大咖提问,近距离接触,或者获得私密资料分享。

喜马拉雅

路上或者车上了解最新黑科技资讯,架构心得。

【智能时刻,架构君和你聊黑科技】

知识星球

认识更多朋友,职场和技术闲聊。

知识星球【职场和技术】

微博

【智能时刻】

智能时刻

哔哩哔哩

【超级架构师】

抖音

【cea_cio】超级架构师

快手

【cea_cio_cto】超级架构师

小红书

【cea_csa_cto】超级架构师

谢谢大家关注,转发,点赞和点在看。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-02-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 首席架构师智库 微信公众号,前往查看

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【企业架构】企业架构(EA)简介
介绍 在当今的数字时代,大多数企业的运营都依赖于技术。这项技术有多种形式,但软件系统最为人所知。 众所周知,每家公司要么提供要销售的产品,要么提供服务。这些公司由其所有者、经理或企业最高管理层管理,但他们不一定是技术专家。 这些所有者不做出技术决定。这就是为什么他们需要帮助来构建和购买运行其业务的信息系统。这就是企业架构的用武之地。 在本文中,我们将讨论什么是企业架构师以及他们的工作。好,那我们开始吧。 什么是企业架构 (EA)? 企业一词代表任何使用软件系统的组织,并且不仅限于公司。它可以是政府机
架构师研究会
2022/04/18
1.5K0
【企业架构】企业架构(EA)简介
【数据湖】Azure 数据湖分析(Azure Data Lake Analytics )概述
在本文中,我们将探索 Azure 数据湖分析并使用 U-SQL 查询数据。 Azure 数据湖分析 (ADLA) 简介 Microsoft Azure 平台支持 Hadoop、HDInsight、数据湖等大数据。通常,传统数据仓库存储来自各种数据源的数据,将数据转换为单一格式并进行分析以做出决策。开发人员使用可能需要更长时间进行数据检索的复杂查询。组织正在增加他们在云基础架构中的足迹。它利用了云基础设施仓库解决方案,例如 Amazon RedShift、Azure Synapse Analytics(A
架构师研究会
2022/03/08
1.2K0
【前端架构】从 JQuery 到 React、Vue、Angular——前端框架的演变及其差异
这是前端面试中必然会问到的问题 前端开发多年来一直在不断改进。从简单的静态页面到现在复杂的单页面应用程序,我们的工具变得越来越强大。现在,三大前端框架统治着前端开发,那么你知道这三个框架的区别吗?为什么一直保持着三足鼎立的局面,而不是某种框架来统一其他人?让我们在本文中讨论这些问题。 前端开发的演变 PHP && JSP 早些年,网页的动态内容是在服务器端渲染的,主要使用PHP、JSP等技术。 此时,服务器通过模板引擎填充数据,然后生成HTML,并将HTML返回给浏览器进行渲染。 <!DOCTYPE
架构师研究会
2022/03/24
2.3K0
【企业架构】IT 不重要,但企业架构重要
Nicholas G. Carr 撰写他的文章“IT 无关紧要”已经 18 年多了。我记得读过标题;令一位年轻的 IT 顾问感到震惊,认为本世纪这个世界会如此需要我和我的同事。但是在阅读这篇文章时,我很快就明白了卡尔的意思;电子数据处理成为一种商品,就像电力已经存在了几十年一样。电子数据处理对其早期采用者具有战略优势,但时间有限。因此,随着每个人都可以使用这种信息技术,认为您可以通过“购买 IT”来获得公司的战略优势显然是一个错误的愿景,它仍然适用于新技术。在 IT 集合中,人工智能、物联网、量子计算、虚拟
架构师研究会
2022/04/14
5160
【企业架构】IT 不重要,但企业架构重要
【架构治理】在代码存储库中记录软件架构
Markdown 是一种标准的简单语法,用于创建具有专业外观的文档。它比 HTML 更简单,无需专门的编写编辑器即可进行管理。Git配置管理工具也支持markdown格式。在 Git 环境中,markdown 一般用于项目的简单介绍和构建说明。(自述文件)。本文介绍了如何将 Markdown 格式与模板一起用于架构文档。 带有 Markdown 的架构文档 与代码一起管理软件的架构设计和设计决策将为项目提供极大的便利。当我们的设计与代码一起保存在配置管理环境中时,我们可以一起进行设计变更和代码变更。当新
架构师研究会
2022/04/12
1.9K0
【架构治理】在代码存储库中记录软件架构
【企业架构】SOGAF 运营模式
Salesforce 运营、治理和架构框架 (SOGAF) 将 MIT-CISR 企业架构框架应用于 Salesforce 实施和程序。 介绍 运营模式有两个维度:业务流程标准化和业务流程集成。业务流程和相关系统的标准化意味着准确定义流程的执行方式。运营模式可提高整个公司的效率和可预测性。 业务流程的集成通过共享数据将组织单位的工作联系起来。这种数据共享可以在流程之间进行,以实现端到端的交易处理,也可以在流程之间进行,以使公司能够向客户提供统一的体验。业务流程集成的好处包括提高效率、协调性、透明度和敏捷
架构师研究会
2022/04/18
5430
【企业架构】SOGAF 运营模式
【服务网格】eBPF 和 Wasm:探索服务网格数据平面的未来
2021 年 12 月 2 日,Cilium 项目宣布了 Cilium Service Mesh 的 beta 测试计划。基于 Google Cloud 基于 eBPF 的 Google Kubernetes Service (GKS) Dataplane V2 开创的概念,Cilium Service Mesh 于一年前于 2020 年 8 月宣布,推广了“无边服务网格”的理念。它扩展了 Cilium eBPF 产品以处理服务网格中的大部分 Sidecar 代理功能,包括 L7 路由和负载平衡、TLS 终
架构师研究会
2022/03/14
7980
【企业架构】SOGAF ,Salesforce 的运营、治理和架构框架
“如果你想要新的东西,你必须停止做旧的东西。” ——彼得·德鲁克,《公司概念》的作者 这篇文章介绍了 Salesforce 运营、治理和架构框架 (SOGAF),这是一个新的大规模治理框架,由对跨多个行业的学术文献、现有框架和转型案例研究的广泛研究提供支持。 为什么我们需要另一个治理框架? 我们已经看到技术驱动转型的两个根本性转变:技术模型本身以及实施和运营的方法。技术模型发生了变化,因为从内部部署到云计算的转变带来了许多好处,例如敏捷性、可扩展性、成本节约、最小的资本支出、增强的协作、随时随地工作等
架构师研究会
2022/04/15
1.1K0
【企业架构】SOGAF ,Salesforce 的运营、治理和架构框架
【微服务架构】微服务设计模式
这是微服务架构系列文章的第 3 篇 高可用性、可扩展性、故障恢复能力和性能是微服务的特征。您可以使用微服务架构模式来构建微服务应用程序,从而降低微服务失败的风险。 模式分为三层: 应用模式 应用程序模式解决了开发人员面临的问题,例如数据分解、数据维护、测试、用户界面和一些可观察性模式。 让我们回顾一下这些应用程序模式的基础知识。 分解模式 选择如何将单体系统分解为服务 按业务能力分解——服务是围绕业务能力组织的。 按子域分解——服务是围绕域驱动设计的子域组织的。 数据模式 数据一致性——每个
架构师研究会
2022/04/18
8570
【微服务架构】微服务设计模式
【微服务架构】让我们谈谈“拥有”他们的数据的微服务
前几天我和一位同事讨论了我的微服务将用来公开特定数据集的接口的设计。数据由我的微服务保存在 Elastic Search 中,并根据最终用户将选择的过滤器以不同的形式由 UI 使用和呈现。当我仅仅提出
架构师研究会
2022/03/21
6060
【微服务】微服务安全 - 如何保护您的微服务基础架构?
在当今行业使用各种软件架构和应用程序的市场中,几乎不可能感觉到您的数据是完全安全的。因此,在使用微服务架构构建应用程序时,安全问题变得更加重要,因为各个服务相互之间以及客户端之间进行通信。因此,在这篇关于微服务安全的文章中,我将按以下顺序讨论您可以实施的各种方法来保护您的微服务。 什么是微服务? 微服务面临的问题 保护微服务的最佳实践 什么是微服务? 微服务,又名微服务架构,是一种架构风格,将应用程序构建为围绕业务领域建模的小型自治服务的集合。因此,您可以将微服务理解为围绕单个业务逻辑相互通信的小型单个
架构师研究会
2022/04/21
1.1K0
【微服务】微服务安全 - 如何保护您的微服务基础架构?
【企业架构】敏捷与企业架构:战略联盟
许多企业声称,开放组架构框架 (TOGAF) 是一种瀑布模型,无法满足他们对现代企业架构的期望。相反,他们采用规模化敏捷框架 (SAFe) 方法来设计他们的企业。¹ 需要注意的是,企业架构的三大支柱是:一致性、洞察力和质量。 一致性:企业架构 (EA) 将战略与运营、业务需求与 IT 供应保持一致,并确保变更符合企业战略和目标。 洞察力:EA 提供对组织、信息系统和技术的当前和期望状态的洞察力。 质量:EA 有助于提高单个解决方案的质量并简化其开发和维护。 作为背景,每一个都用于解决企业今天面临的最大挑战
架构师研究会
2022/04/11
7330
【企业架构】敏捷与企业架构:战略联盟
【微服务架构】什么是微服务? — 全面了解微服务架构
What is Microservices — Edureka 您有没有想过,什么是微服务以及扩展行业如何与它们集成,同时构建应用程序以满足客户的期望? 要了解什么是微服务,您必须了解如何将单体应用程序分解为独立打包和部署的小型微型应用程序。本文将让您清楚了解开发人员如何使用微服务根据需要扩展其应用程序。 在本文中,您将了解以下内容: 为什么是微服务? 什么是微服务? 微服务架构的特点 微服务架构的优势 设计微服务的最佳实践 使用微服务的公司 为什么是微服务? 现在,在我告诉你微服务之前,让我们看看在
架构师研究会
2022/04/24
2.6K0
【微服务架构】什么是微服务? — 全面了解微服务架构
【数据库架构】OLTP 和 OLAP 的区别
OLTP 和 OLAP 都是在线处理系统。OLTP 是一种事务处理,而 OLAP 是一种分析处理系统。OLTP 是一个管理互联网上面向交易的应用程序的系统,例如 ATM。OLAP 是一个在线系统,可以报告财务报告、预测等多维分析查询。 OLTP 和 OLAP 的区别 OLTP 和 OLAP 都是在线处理系统。OLTP 是一种事务处理,而 OLAP 是一种分析处理系统。OLTP 是一个管理互联网上面向交易的应用程序的系统,例如 ATM。OLAP 是一个在线系统,可以报告财务报告、预测等多维分析查询。 OLT
架构师研究会
2022/04/13
2.6K0
「新兴技术和创新」EA874:创新网络
介绍 过去几十年来,产品、市场和经济的变化和发展速度,催生了一种更精细(而非全新)的创新管理方法:创新网络。当一个组织了解创新网络的要求、从其生态系统中可以获得哪些角色以及如何将网络整合在一起时,它就有机会实施可持续创新,比孤立的类似努力带来更大的商业回报。 构成创新网络的角色 构成创新网络的四个专业角色是: 1] 发明家 2] 转型者 3] 金融家 4] 经纪人 见下图 图1 创新生态系统 每个组织都是由相互关联的参与者组成的更广泛的商业生态系统的一部分。不断层出不穷的新技术和它们带来的创新加强了这
架构师研究会
2022/03/08
3310
【微前端架构】AWS 上的微前端架构
微服务架构的特点是独立服务,这些服务专注于特定的业务功能,并由小型、自包含的团队维护。微服务架构经常用于在 AWS 上开发的 Web 应用程序,这是有充分理由的。它们提供了许多众所周知的好处,例如开发敏捷性、技术自由、有针对性的部署等等。尽管微服务很受欢迎,但许多前端应用程序仍然以单体风格构建。例如,他们有一个与所有后端微服务交互的大型代码库,并由一大群开发人员维护。 图 1. 带有单体前端的微服务后端 什么是微前端? 微前端架构将微服务开发原则引入前端应用程序。在微前端架构中,开发团队独立构建和部署“
架构师研究会
2022/03/08
2.1K0
【SaaS云】SaaS洞察(02) : SaaS是一种商业模式
本文是“洞察:SaaS”系列文章之一,您可以阅读上一篇文章“洞察:SaaS(1)SaaS市场我为什么选择美国而不是中国?”。 SaaS 是 Software as a Service 的缩写。近年来,许多SaaS公司已经变得众所周知。许多企业家也开始了自己的 SaaS 业务。互联网上有无数文章解释了 SaaS 的好处。您可以自行查找。本文将解释为什么 SaaS 是一种成功的商业模式,为什么它是神奇的,以及为什么 XaaS(任何即服务)尚未获得关注。 首先,SaaS 有两个基本组件: 经常性收入 软件 请注
架构师研究会
2022/03/21
9950
【Web3】什么是Web3?一个新的去中心化网络,或是最新的营销流行语
Web3已成为一种将区块链、智能合约和去中心化应用程序结合在一起的尝试,但其真正的功效难以确定。 Web3,如Web3基金会设想的那样,将是一个公共互联网,数据和内容被注册在块链上,在对等分布式网络上进行令牌化或管理和访问。 Web3有望成为一个去中心化的、不可变的web版本,不存在中间人,并具有与加密货币、不可替代代币(NFT)和以分布式账本(DAPP)为基础的新型去中心化应用程序相同的加密可验证性。 如果所有这些听起来都很复杂,那是因为它是复杂的。就目前而言,Web3是一个有点模糊的概念,它仍然被定义
架构师研究会
2022/03/08
6450
【软件架构】2022 年软件行业的主要趋势
关键要点 混合工作将继续存在。要问的关键问题包括:什么是正确的平衡?我们需要多少时间亲自在一起?入职如何受到影响?另外,就时区而言,我们需要同步多少时间? 康威定律可能有 COVID 推论;能够有效开发松散耦合系统(通常具有微服务架构)的公司最好设置为远程工作并使用分布式方法。使微服务工作的是独立且高度一致的团队和人员。 2021 年,数据工程和 AI/ML 领域出现了三个有趣的发展:数据管理——摄取和清理数据;基础设施——基于云技术的数据工程平台和服务的兴起;和运维——“DataOps”的出现和DevO
架构师研究会
2022/03/14
5410
【数据湖仓】数据湖和仓库:Azure Synapse 视角
是时候将数据分析迁移到云端了。我们将讨论 Azure Synapse 在数据湖和数据仓库范式规模上的定位。 在本文中,我们将讨论 Microsoft 的 Azure Synapse Analytics 框架。具体来说,我们关注如何在其中看到数据仓库和数据湖范式的区别。 为了熟悉这个主题,我建议你先阅读本系列的前几篇文章。 数据湖和仓库第 1 部分:范式简介 数据湖和仓库第 2 部分:Databricks 和Showflake 数据湖和仓库第 3 部分:Azure Synapse 观点 我们现在考虑一个更新颖
架构师研究会
2022/03/08
1.3K0
推荐阅读
相关推荐
【企业架构】企业架构(EA)简介
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档