社群认为React Native有三大痛点,升级难、调试不易、性能不佳

React Native社群发起问卷调查State of React Native,以进一步了解框架痛点以及替代工具的选择。React Native是一个由脸书以React.js为基础,所开发的应用程序框架,供开发者以声明式程序开发模式开发多平台应用程序,多数用于开发iOS和Android平台应用程序,但也能够通过另外的组件开发UWP应用程序。

React Native中有许多新兴客户端状态库让开发者感兴趣,包括Zustand、Jotai和Legend State,但是采用率仍相对较低,Redux函数库仍是更为热门的选择,使用率仅低于内置的Hooks。而在服务器状态函数库方面,TanStack Query和Apollo表现相当,但是在开发者表达会再次使用的比例上,Apollo明显更少。

问卷调查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以些微差异位居第二,表示虽然目前开发人员必须使用这些组件,但也乐意看到他们被取代。

尽管框架还有许多可改进之处,不过受访者对框架整体感到满意,无论是构建应用程序的复杂度或是框架的改进速度,社群成员皆认为发展适中。

这是第一份State of React Native调查报告,在React Native社群中收集到超过1,800份回应,Bartłomiej Bukowski向知名JavaScript社群调查State of JS的创建人Sacha Greif取经,并在React Native社群创建一个类似的调查。Bartłomiej Bukowski表示,React Native开发人员常会面临不知道该在项目使用那种解决方案的困扰,而通过集中比较,能够助开发者更好地选择想要使用的技术。