React Native 社区(非官方)在两个月前发起了一项问卷调查 (State of React Native),目的是希望进一步了解开发者使用 React Native 框架遇到的痛点,以及替代工具的选择。
近日他们公布了调查结果,总的来说,多数受访者认为 React Native 有三大痛点:
- 升级版本困难
- 调试错误不便
- 性能不够好
此外还有超过半数的受访者指出,React Native 框架还存在另外两个严重问题,分别是存在无人维护的软件包,以及过分依赖第三方函数库。
State of React Native 发起人,同时也是 Software Mansion 的软件工程师 Kacper Kapuściak 认为,由于维护 React Native 需要三种以上的编程语言,同时还要了解 iOS 和 Android API 知识,所以这项工作实际上并不容易,而且移动端平台的频繁更新,使得许多桥接套件很快就过时。
最受 React Native 开发者偏爱的替代框架是 SwiftUI 和 Jetpack Compose,而 Ionic、Xamarin 和 Apache Cordova 则相对不那么受 React Native 开发者喜爱。不够这项调查有趣的地方是,虽然 React Native 开发者普遍喜爱 Cordova 和 Ionic,但是 Cordova 使用率却位居第一,Ionic 也以略微差异位居第二。这说明虽然目前开发者必须使用这些套件,但也乐意看到他们被取代。
React Native 中有许多新兴客户端状态库让开发者感兴趣,包括 Zustand、Jotai 和 Legend State,但是它们的采用率相对较低,Redux 函数库仍是更为热门的选择,使用率仅低于内置的 Hooks。而在服务器端状态函式库方面,TanStack Query 和 Apollo 表现相当,但是在开发者表达会再次使用的比例上,Apollo 明显更少。
总的来说,React Native 框架还有许多可改进之处,不过受访者对框架整体感到满意,无论是构建应用程序的复杂度,或者是框架的改进速度,社区成员皆认为发展适中。
这是第一份 State of React Native 调查报告,在 React Native 社区中收集到超过 1,800 份回应,发起人 Bartłomiej Bukowski 表示,React Native 开发者常会面临不知道该在项目使用那种解决方案的困扰,现在通过集中比较,希望能够帮助开发者更好地选择想要使用的技术。