React Native 优缺点,如果现在开始做会选哪个

我们因为只有一个工程师,做 App 的话跨平台开发是很自然的选项。
在2018年开发时,当初只有 React Native 跟 Xamarin 这两个选项。
但那时 Xamarin 感觉越来越不行,我们就选了React Native。一直沿用至今,目前用下来感觉有好有坏,最近 Flutter 是很多人的新宠。但我们应该短时间内不会想要改变。

React Native 对我们而言的优点

  1. 写过 React 的人就可以直接上手。
  2. 可以用 JavaScript 的 Library ,所以很方便。这点太强。
  3. 因为我们後端是 Node.js,所以这样等於前後都可以统一用 TypeScript

React Native 目前感受到的缺点

  1. 最困扰的是 Library 很多已经没在维护。就算发布当初时好好的,但是後来常常因为 iOS 或 Android 版本更新,或 React Native 自己的版本更新,出现 Bug。这时候就要自己做 Patch 去补。

  2. 另一个常见的大家的顾虑,就是 Native 跟 JavaScript 的 Bridge,这也是效能的最大瓶颈。所以如果有很多要在这两个之间交换情报的情况,会影响比较大,比如说以 Scroll 为条件启动 animation之类的,因为 scroll 是 Native 的 event。 Flutter 就比较没有这个问题,不会跟 Native 有互动,因为是 Compiled 过的。

如果现在开始做会选哪个

常被问 Flutter 跟 React Native 哪个好。因为我们并没有实际用过 Flutter,所以意见也不客观。但如果现在重新考虑,可能一半机率还是会选 React Native。
虽然 Flutter 的 效能很吸引人,但 据说 library 目前还不太稳定。
而且 React Native 可以用 JavaScript 的 Library 这点实在太重要了。
另外,React Native 一直在说可能会解决 Bridge 这个问题,但已经讲了三年了,不知道到底会怎样。

最新文章会分享在脸书:https://www.facebook.com/gigi.wuwu/
欢迎留言讨论


<<:  Day 3 Capsule Network

>>:  【Day 3】Git与Github入门

19 - Remote - Containers - 在容器中开发

在正式开发前,开发者都需要安装许多软件,来建立开发的环境。但是安装的方式会因开发所在的机器环境而有所...

html 多选题

昨天说了单选题,今天来说说多选题 多选题比单选题还要简单,逻辑上来说就是每个选项都只有勾与不勾两种状...

[3D地图-CesiumJS系列] 一、快速上手

今天要来介绍3D地图的一个API,CesiumJS。 CesiumJS为一个开源JavaScript...

android studio 30天学习笔记-day 21 -获得日期

一般在使用资料库新增资料的时候,都会看到新建资料的日期跟时间,今天会再sqllite上加入日期。 我...

DAY16 服务室--JSON Server RESTful API简单用

RESTful API操作资料的几种方法 我们先使用前天的假资料如下: { "posts&...