2024年12月から2025年1月にかけて実施されたState of React Native 2024 Surveyは約3,500人のReact Native開発者から洞察を収集し、React Nativeのエコシステムにおける主要なツールや技術の現状を把握、開発者がより良い意思決定を支援することを目的としている、と調査をキュレーションしたSoftware MansionのソフトウェアエンジニアBartłomiej Bukowski氏は説明する。
State of React Native 2024 Surveyは使われたAPI、ライブラリ、状態管理、ナビゲーション、デバッグ、ビルド、パブリッシング等を含む15以上の異なる分野をカバーしている。
統計学的な観点からは、回答者の約30%が10年以上開発者として働いており、96%が男性で20か国以上からの参加があった。
回答者の80%以上が最大5人の開発者チームで働いており、主にiOSおよびAndroidプラットフォームをターゲットに、金融、教育、エンターテインメント、コミュニケーション、生産性など幅広い業界で活動している。回答者の50%近くが、彼らの最も成功しているReact Nativeアプリのユーザー数は1,000人未満であると回答している一方、37%の開発者は10,000人以上のユーザーのアプリを持っている。回答者の50%は5つ以上のアプリをリリースしている。
AmazonのデベロッパーアドボケイトAnisha Malde氏によると、これらの回答はReact Nativeエコシステムの多様性とそのアプリ規模や業界分野における汎用性を示している。
もっとも使用されているプラットフォームAPIの中で、回答者はCamera API、Notifications、Permissions、Deep Linkingなどを挙げた。非常に興味深いことにそのうちの3つ(Notifications、Deep Linking、Permissions)はペインポイントのトップ5にもランクインしている。
React開発者兼OSSメンテナーVojtech Novak氏はプッシュ通知について、「セットアップが簡単ではなく、非常に広範な機能を持ち、クロスプラットフォームでの違いが顕著でアプリケーションに依存する動作などの癖がある」と説明している。これはバックグラウンド処理にも当てはまるが、もっともよく使われるAPIのひとつではない。
状態管理はReactエコシステムにおける主要なトピックであり、ReduxやRedux Toolkitなどのツールが注目されている。Reduxはもっとも否定的なフィードバックを受け、回答者の約18%が不満を表明した。対照的にReactのビルトイン状態管理は31%の回答者が肯定的に評価し、Zustandは21%の肯定的な意見で僅差で続いた。
Galaxies.devの創設者であるSimon Grimm氏によると:
Zustandは現代的な状態管理ライブラリとして引き続き台頭しており、開発者にとって驚くほどシンプルなエクスペリエンスを提供しています。Reactのビルトインを除けば、使用後に開発者にこれほどポジティブなエクスペリエンスを残すライブラリは他にありません。また、Context APIの利用も依然として非常に人気があり、ほとんどの小規模アプリのニーズに十分に対応できるソリューションであることを示しています。
最後にこの調査では、回答者の71%が使用していると報告したExpoのEAS Buildのような自動化ソリューションの採用傾向が強まっていることがハイライトされている。XcodeやAndroid Studioのような手作業による方法はあまり普及しなくなってきているが、回答者のそれぞれ59.7%と54.5%が依然として広く使用している。
今回紹介した内容以外にもReact Native 2024 Surveyには多くの情報が含まれているため、詳細は公式レポートを確認いただきたい。