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

Codegen とは何か

Codegen は、大量の繰り返しコードを書くのを回避するためのツールです。 Codegen を使用する必須ではありません: 生成されたすべてのコードを手動で書くことができます。ただし、Codegen は時間を大幅に節約できる足場コードを生成します。

React Native は、iOS または Android アプリがビルドされるたびに Codegen を自動的に呼び出します。時折、Codegen スクリプトを手動で実行して、実際に生成されるタイプとファイルを確認したい場合があります: これは、Turbo Native Modules および Fabric Native Components を開発するときの一般的なシナリオです。

Codegen はどのように機能するのか

Codegen は React Native アプリと密接に連携するプロセスです。 Codegen スクリプトは react-native NPM パッケージ内にあり、アプリはビルド時にそれらのスクリプトを呼び出します。

Codegen は、React Native のカスタムモジュールとコンポーネントの仕様 (スペック) を含む特定の JS ファイルを検索して、package.json で指定したディレクトリから始めてプロジェクト内のフォルダーをクロールします。スペックファイルは、型付けされた方言で記述された JS ファイルです。React Native は現在、Flow と TypeScript をサポートしています。

Codegen がスペックファイルを見つけるたびに、それに関連付けられた雛形コードを生成します。 Codegen は C++ グルーコードを生成し、次にプラットフォーム固有のコードを生成します。Android には Java を使用し、iOS には Objective-C++ を使用します。