这是第「36篇」分享
DemoYang(ID:Demo_YangBJ),专注于Android领域的开发者。
想学Flutter,就请关注这个专栏
Flutter系列(一)——详细介绍
Flutter系列(二)——与React Native进行对比
Flutter系列(三)——环境搭建(Windows)
Flutter系列(四)——HelloWorld
Dart语言详解(一)——详细介绍
Dart语言详解(二)——基本语法
Dart语法详解(三)——进阶篇
React Native
React Native也是一种跨平台的开发模式,现在还有一些都在用,比如我了解的去哪儿,京东的部分事业群都在用React Native,我在之前的项目开发当中,也用过React Native。
那么问题来了,和React Navtive相比,Flutter有哪些优势,又有哪些不足呢?
其实这也是面试经常会问到的一个内容,下面就通过接下来的这篇文章,彻底搞懂这个问题。
背景
首先来简单了解下 Flutter 和 React Native 的背景,Flutter 是由谷歌开发的软件开发工具包(SDK)。它可以帮助开发人员使用单一代码库构建 iOS 和 Android 应用程序。React Native 与 Flutter 具有相同的目的,但方式不同。它是由 Facebook 建立的,用于创建移动应用程序,而不会影响应用程序的外观和感觉。
七大不同
1. 快速比较
从下图中你可以快速查看关于 React Native 和 Flutter 差异的关键要点,包括编程语言、GitHub Stars、学习曲线、主要架构,等等。
2. 发展速度
企业,特别是初创企业寻找一个能够在更短的时间内为他们提供应用的平台。此时 React Native 就有很大的优势。因为它的即用型组件可以帮助开发人员快速制作应用程序。而 Flutter 是一个寻求开发时间占优的新平台。
3. 性能
与其他混合框架不同,React Native 工作及执行速度更快。这是因为 JavaScript 单独运行,可以与 native modules 交互,以进行桥接所需的任何操作。另一方面**,Flutter **是使用 OOP 语言的 C / C++ 库所编译,更多的是用机器语言,使其能够更好的执行。总之,两个平台的性能有些接近。
4. IDE 和易于编码程度
React Native 几乎支持所有领先的 IDE。而 Flutter 是受 Android Studio / IntelliJ 和** Visual Studio** 代码支持。由于** React Native** 具有 Javascript 的强大功能,所以新手很容易学习。在 Flutter 方面,它的编程语言 Dart 是新发明的语言对开发人员来说有点难。但是,那些具有C++ 和 Java 经验的人就可以轻松学习它。
5. 稳定性和灵活性
这两个平台都得到了领先技术社区的支持,两者都有很好的稳定性。React Native 拥有大量的社区支持,因此,它是最受欢迎和最可靠的框架之一。另一方面,**Flutter **推出了新版本 beta 2,它也为开发人员提供了一些很好的功能。在提供灵活性和定制方面,React Native 处于领先地位。它通过直接与 Native 平台交互提供无缝的用户体验。然而,Flutter 提供了一组丰富的自定义小部件,虽然它正处于测试版本,但也正在以此建立自己的市场。
6. 流行
React Native 在混合应用程序的开发中优势明显,无论是小型项目还是大型项目,它都非常受欢迎。相反,Flutter 正处于起步阶段并试图在移动应用开发上做出成绩,它在 Git 存储库中获得了高分。此外,阿里巴巴正在使用 Flutter。这表明了它在混合应用开发中的前景。
7. React Native 和 Flutter 之间的相似之处
除了两个平台之间的差异外,二者在某些方面也有相同的作用:都拥有流行技术社区的力量都用于跨平台开发都允许同时运行新代码并保持应用程序状态都拥有顶级 UI 支持和原生体验都具有开源、免费、快速的特点。
最后
Flutter已经是Top20的软件库,通过接下来的一系列的文章,希望我和大家一起来学习Flutter,一起进步,一起有所收获,掌握未来技术主流的主动权!
有什么好的建议,意见,想法欢迎给我留言!