Facebook の React JavaScript フレームワークを使用して iOS および Android 用のアプリを構築し、ネイティブ アプリとほぼ同じパフォーマンスを提供することは可能ですか?
2 に答える
2015 年 1 月までは、 Apache Cordovaなどのフレームワークを使用して WebView コンポーネント内で React JavaScript パーツを実行するハイブリッド アプローチを使用することが唯一の選択肢であり、このアプローチには典型的な欠点がありました。JavaScript のガベージ コレクションなどのタスクは、アプリのネイティブ部分の速度を低下させ、フレームのスキップにつながり、アプリの動作が遅くなることがあります。
1 月 28 日、 Facebook はReact.js Conf 2015で React Native プロジェクトを発表しました。React Native は、iOS および Android 用の React で構築された HTML5 アプリケーションのネイティブ レンダリングを可能にするオープン ソース プロジェクトになります。React Native は、Facebook 内部で iOS 用の Facebook グループ アプリなどのアプリを構築するために使用されています。
技術的には、React Native はバックグラウンド スレッドで React アプリの JavaScript コードを実行します。仮想 DOM への更新が収集され、すべての変更が API を介してアプリのネイティブ部分に送信されます。これにより、React Native は、未完了の JavaScript 操作をアプリに待機させることで、アプリの FPS レートが低下するのを回避します。
Facebook は、React Native のソース コードが React.js Conf 2015 の直後に Github で利用可能になると発表しました。カンファレンスの参加者は、2015 年 1 月 29 日に既に Github リポジトリにアクセスできます。
更新: React.js Conf 2015 Keynote 2 - A Deep Dive into React Native の技術的な詳細を含む 2 つ目のプレゼンテーション ビデオが Youtube にアップされました。プレゼンテーション中、Facebook は、iOS と Android の両方のレイアウトおよびボックス モデル エンジン レンダリングのソース コードが、次のリポジトリの Github で利用できることを発表しました: github.com/facebook/css-layout
React Native で使用されるアニメーション ライブラリの iOS バージョンは、https://github.com/facebook/popでホストされています。
更新 2: ソース コードが Github で利用可能に React Native のソース コードがhttps://github.com/facebook/react-nativeで利用可能になりました。
更新 3: React チームは 2015 年 9 月に Android サポートをリリースしました https://code.facebook.com/posts/1189117404435352/react-native-for-android-how-we-built-the-first-cross-platform-react-native -アプリ/
React Native Android 開発を開始するための手順は、 https ://facebook.github.io/react-native/docs/android-setup.html にあります。
上記のように、React Native は iOS でのみ使用できます。
両方のプラットフォームで React を使用する場合:
- Reapp をチェックしてください ( http://reapp.io/ )。クールな機能を備えた iOS および Android アプリを構築するための React + Javascript フレームワークです。
- Touchstone ( http://touchstonejs.io/ ) を試してみてください。基本的には、React + Cordova + HTML5/CSS3 UI です。ドキュメントも近日公開予定です。