メインコンテンツへスキップ

React Nativeアプリ構築のためのフレームワークの使用

·4分間の読書
Nicola Corti
Nicola Corti
Metaのソフトウェアエンジニア

React Confでは、React Nativeアプリの構築を開始するための最適なツールに関するガイドラインを更新しました。それは、本番環境対応アプリを構築するために必要なすべてのAPIを備えたReact Nativeフレームワークです。

ExpoなどのReact Nativeフレームワークを使用することが、新しいアプリを作成するための推奨アプローチになりました。

このブログ記事では、それらが具体的にどのようなものか、そして新しいプロジェクトを開始するReact Native開発者にとってどのような意味を持つのかを詳しく説明します。

React Nativeフレームワークとは何か?

本番アプリを構築してきた方は、遅かれ早かれ解決する必要がある共通の問題がいくつかあることをご存知でしょう。

Webまたはネイティブのどちらかでアプリケーションを構築する場合、ユーザーがさまざまな画面を移動し、データを取得し、ユーザーの状態を保存することを望むでしょう。しかし、ネイティブアプリではさらに多くの問題に対処する必要があります。React Nativeのバージョン間でネイティブコードをアップグレードするためのツール、すべての依存関係の互換性のあるバージョンを管理するためのツール、そしてネイティブビルドツールに対処するためのツールが必要です。

適切なツールがなければ、アイデアから本番環境へのアプリの展開には多くの努力が必要です。

私たちは、ユーザーのために美しく機能的なアプリケーションと機能を書くことに集中していただき、これらの共通の問題を何度も何度も解決する必要がないようにしたいと考えています。

だからこそ、本番環境対応アプリケーションを構築するために必要なすべてのツールを備えたツールボックスを提供するフレームワークを通じて、React Nativeを体験するのが最適な方法だと考えています。

私たちは、フレームワークを使用しているか、独自のフレームワークを構築しているかのどちらかであることに気づきました。

ルーティング、ナビゲーション、デプロイなど、独自のソリューションを作成して独自のフレームワークを構築することに何の問題もありません。MetaやMicrosoftなどの大手企業は、内部的に独自のフレームワークを構築して、既存のアプリに深く統合しています。しかし、ほとんどの人は既存のフレームワークを使用する方が良いと考えています。

WebでReactを使用してきた方は、本番環境対応のReactフレームワークという同様の概念に精通しているかもしれません。

現在、React Nativeで推奨される唯一のコミュニティフレームワークはExpoです。Expoの皆さん は、React Nativeの初期からReact Nativeエコシステムに投資しており、現在、Expoによって提供される開発者エクスペリエンスは最高レベルだと考えています。

注記

フレームワークとしてのExpoは、今後も無料でオープンソースとして提供されますが、Expo Application Services(EAS)はオプションの有料サービスです。

最近Expoを使用していない場合は、Kadi @ Expoによるこの講演を見逃さないようにしてください。2024年のExpoで何ができるかが紹介されています。

また、この推奨事項を反映するために、ウェブサイトのGetting Startedページを更新しました。

フレームワークはどのように影響しますか?

Expoなどの推奨フレームワークを既に使用している場合は、そのまま使用できます!

既存のアプリをExpoに移行したい場合は、Expoの公式ウェブサイトに手順があります。Expoは、React Nativeバージョンのアップグレードを容易にする方法、より優れた開発者エクスペリエンスなど、多くの利点を提供します。

ただし、Expoに移行できない場合や移行したくない場合でも問題ありません。公式フレームワークを使用せずにReact Nativeを使用することは引き続きサポートされます。React Native Community CLI、テンプレート、Upgrade Helperなどのこれまで使用してきたツールは、通常どおり動作し続けます。

react-native initコマンドはコアから移動され、現在は

npx @react-native-community/cli@latest init

およびGitHubのreact-native-community/cliからアクセスできます。

React Nativeライブラリの開発者の方は、使用するAPIに関する推奨事項をまとめたリストがあります。RFCで詳細をご覧ください

さらに読む

この決定の背後にある理由の詳細を知りたい場合は、RFC0759: React Nativeフレームワークをお読みください。このRFCは、React Nativeエコシステムのさまざまなパートナーと関係者による数ヶ月間にわたる数え切れないほどの議論とブレインストーミングの結果です。

現在、Expoが唯一推奨されているフレームワークですが、このRFCには、推奨フレームワークになるためのガイドラインも含まれており、この分野における競争とイノベーションの促進を目指しています。

さらに、App.js 2024で行われた講演useFrameworks()をご覧ください。この講演では、このRFCと必要な変更点を簡潔に説明しています。

React Nativeコアとフレームワークそれぞれの責任を明確にすることで、より健全なエコシステムを育み、React Nativeの成長とイノベーションを促進できると確信しています。