Flutter と React　Native：現在、どちらが最良でしょうか。（第五部）


<!-- wp:paragraph -->
<p><a href="https://qiita.com/ints/items/2da6583b199cc4cf84d0">第三部はこちら</a>　　<a href="https://qiita.com/ints/items/23f803bf567ebabad821">第四部はこちら</a></p>
<!-- /wp:paragraph -->


**4．React　Nativeの開発**

[React　Nativeは]( https://reactnative.dev/)、ネイティブアプリのようなクロスプラットフォームアプリを構築できる**JavaScriptフレームワーク**です。 現在では、多くのグループ、大企業、新興企業で広く使用されています。**React　Native**でのアプリ開発の**利点と欠点を発見する**ためにこのトピックをさらに深く掘り下げましょう。

![]( https://d50cmv7hkyx4e.cloudfront.net/wp-content/uploads/2021/06/19124938/46a6e8db1b678db4c765e6e1d20db9bd-1-694x1024.png)

React　Nativeは、初期化段階でこのような成功するツールになるとは期待されていませんでした。元々、**Hackathon向けのFacebookの内部プロジェクト**だけでした。これは、IT専門家が集まり、特定の問題に対する効果的解答を築くイベントです。

Facebookは、React　Nativeが素晴らしいツールかを気付いた、しばらくしてテスト版をリリースしました。その年末に、ReactNativeが運用された方法を見た後、FacebookはReact　Nativeをオープンソースにし、F8カンファレンスで紹介し、Githubに載せました。

Facebookは、React　Nativeを作成する前に、Shoutemを長期で使用していました。これは、アプリケーションメーカーが様々な言語をプラットフォームとして使用できるプラットフォームです。 然し、Facebookは最終に他のテクノロジーを使い続けるのではなく、React　Nativeに切り替えることにしました。

その後、Facebookはインターフェースを作成する為の**Shoutem UI Toolkit**と言う強力なツールを導入しました。これはまだオープンソースです。多くの既成のUI構成子が含まれており、テーマに従うアニメーションを作成するための色々なツールを提供します。

FacebookはまだReact　Nativeを度々更新し、新機能を追加していますが、開発の重要な部分が完了しました。それで、クロスプラットフォームでアプリを開発するための**強力なツールーReact　Nativeがあります。**

上記に記載した通り、React　NativeはJavaScript上に構築されたフレームワークです。様々なオペレーティングシステム向け解答を作成するように設定されています。同じコードでiOSとAndroidで実行できるように、React　NativeはBridgeと言うものを経由する必要があります。**Bridge**は**記述されたコードとネイティブAPI**の間の接続を構築します。

これにより、開発プロセスの全体にアプリケーションがどのようにネイティブであるかを見積もることができる多くのツールが提供されます。 このため、React　Nativeは実際のネイティブ構成子を表示ですので、進行状況を簡単にフォローできます。

開発者がReact　Nativeを選択して学習する最初の理由は、習得しやすい為です。 それに加えて、開発者たちはReact　Nativeが市場に出現している時間にわたって素晴らしいサポートコミュニティを形成してきました。 さらに、専門家にFacebookがサポートする色々有益なツールを提供され、新機能も絶えず追加されています。

**他のほとんどのクロスプラットフォームフレームワーク**が**WebView**モードを使用していますが、React　NativeはレンダリングAPIを使用しています。 同時にネイティブインターフェイスで効率を向上させるのに役立ちます。

上記の利点に加えて、一般的なクロスプラットフォームの開発の利点が見られます。開発の時間とコストの削減、展開の簡素化、更新の容易化などの利点があります。

**React Nativeの欠点の中には**、次の通り主なポイントがあります。

* **デバッグが非効率**
* **アプリケーションの品質がネイティブ解答より低い**
* **ファイルの容量が大きい**
* **コンフィギュレーションが冗長**
* **Apple　Storeでのアプリレビュー際に課題が発生する可能性がある。**

これらの欠点は、React　Nativeや他のクロスプラットフォームフレームワークによく見られます。 正し、競合他社は異なる方法でアプローチすることができ、その結果はしばしば効果的です。 例えば、Flutterのファイルのサイズはかなり大きいですが、React　Nativeで作成されるアプリの平均サイズよりほぼ**2倍小さい**です。

問題がよく発生するデバッグは、FlutterとReact　Nativeの大きな差です。 Flutterを使用すると、このプロセスをすばやく簡単に行うことができますが、React　Nativeアプリの開発にはサードパーティのサポートが必要です。 そのため、デバッグ用のプラグインがたくさんあります。 その中にFlipperとReact　Native　Debuggerがあります。

これらのツールは、React　Nativeでのアプリ開発の中に能率を大幅に向上させることを目的としています。専門家にデバッグ用全て必要なのツールを提供します。 例えば、**Flipperはモバイルアプリのデスクトップにのビューモードを提供するため**、全UI構成子を同じページに保持する方が簡単です。

React　Nativeを使用している企業のリストは、Flutterよりもはるかに多いです。 React Nativeはかなり新しいですが、Flutterよりも完全です。 プロジェクトでReact　Nativeを使用している企業は次の通りです。

![]( https://d50cmv7hkyx4e.cloudfront.net/wp-content/uploads/2021/06/19124937/banner-Recovered-1-1024x499.jpg)


*React　Nativeを使用してアプリを構築している企業*

世間に有名なハイテク巨人のリストを基に、React　Nativeが2020年に2番目に優れたクロスプラットフォームを応用するフレームワークであることを示しています。特にUIとアニメーションに関しては、最高のフレームワークの一つです。

<!-- wp:paragraph -->
<p><a href="https://qiita.com/ints/items/2da6583b199cc4cf84d0">第三部はこちら</a>　　<a href="https://qiita.com/ints/items/23f803bf567ebabad821">第四部はこちら</a></p>
<!-- /wp:paragraph -->



<!-- wp:paragraph -->
<p><a href="https://ints.vn/">株式会社INTS</a> 　　開発部　リン・ジャン</p>
<!-- /wp:paragraph -->