情報技術の体験を生活の至る所で提供し、
社会の発展に貢献しよう。

Le Hoang Nam (Co-Founder)


Archives for ReactNative

Reactを選ばれる7つの理由

現在、IT業界にはさまざまな種類のフレームワークとJavaScriptライブラリがあるため、フロントエンドプロジェクトを開発するためのフレームワークを選択することは悩ましい作業です。NALグループではReactJSが最愛のjavascriptライブラリとしてよく選ばれます。ReactJSを使用することをお勧めする理由はいくつかあります:

1. 学習スピードが早い

Reactは、ビューレイヤーだけを扱うシンプルで軽量なライブラリです。 Javascriptの開発者は基本を理解し、チュートリアルを読んでから数日後に素早くウェブアプリを開発することが出来ます。

Reactのガイドには「リアクションで考える」と書かれているように、以前とは少し違っているかもしれませんが、新しいアプローチを提供するので、経験があればより簡単で自然になります。

2. コンポーネントが再利用可能

Reactはコンポーネントベースのアーキテクチャを提供し、コンポーネントはレゴブロックのようなものです。 ボタン、チェックボックス、ドロップダウンなどの小さな要素から始め、これらの小さなコンポーネントを含むブロックを作成します。 次に、より高いレベルのコンポーネントラッパーを作成します。すべてをまとめて、それはあなたのアプリケーションです。

各コンポーネント自体は、レンダリング方法と独自のロジックを決定します。 このアプローチは大きな成果をもたらします。 必要に応じてコンポーネントを再利用することができます。 結果として、
(1)アプリケーションに統一されたインタフェースがあります。
(2)再利用可能なコードにより、ソースコードの保守と開発が容易になります。
(3)アプリケーションの開発が容易になります。

3. Virtual DOMを使ったクイックレンダリング

多くのユーザーインターフェイスと更新を表示するWebアプリケーションを開発する場合、パフォーマンスの問題に注意する必要があります。現在のjavascriptは複雑なアプリケーションを処理するのに十分速いものの、DOMの操作は十分に速くはありません。

DOMを更新することは、Webパフォーマンスに関しては問題です。ReactはVirtual DOMと呼ばれるものを使ってこの問題を処理しようとしています。メモリに格納されたDOM。変更ビューはVirtual DOMを介して応答され、効率的な比較アルゴリズムが選択され、この変更を最もよく選択して適用します。最後に、DOMの更新は圧縮され、読み取り/書き込み用に最適化されていることが保証されます。これがReactの高性能についての主な理由です。 Facebook株式会社がReactJSをFacebook、Instagramに適用したことがわかります。

ReactJSのスピードをよりよく反映するため、AngularJS、ReactJS、KnockoutJSとRaw DOMの間のパフォーマンステストを見ていきます。テスト方法は、1000個の要素をレンダリングし、完了までの時間を測定することです。以下の結果は、Chrome、Firefox、Safariでテストを実行した後に取得され、各フレームワークは10回実行されました。

ブラウザによると平均は次のとおりです:

Chrome 39.0.217(React:83.4秒、AngularJS:265.2秒、KnockoutJS:334.8秒、Raw:37.3秒)

Firefox 34.0.5(React:36.8s、AngularJS:231.4s、KnockoutJS:420.9s、Raw:44.3s)

Safari 7.0.2(React:30.3s、AngularJS:113.6s、KnockoutJS:174.3s、Raw:59.6s)

(https://www.codementor.io/chrisharrington/react-vs-angularjs-vs-knockoutjs-a-performance-comparison-85hwzepbz)




4. JavaScriptをより簡単に
Reactは、HTMLとJavaScriptを混在させるJSXという特別な構文を使用します。これは必須ではありません。JavaScriptだけで書くことができますが、新しい構文を使うことをお勧めします。なぜなら、 ‘コンポーネント’をより簡単に書くことができるからです。

5. SEOには最適
Javascriptフレームワークの問題の1つは、SEOに相応しくないということです。改良されているにもかかわらず、検索エンジンでは、JavaScript対応のアプリケーションをクロールするのが難しいといえます。 ReactJSはサーバ側で(nodejsのおかげで) Virtual DOMを作成し、それを通常のWebページとしてブラウザに返すことができます。

6. 素晴らしい開発ツール
開発ツールは、開発プラットフォームを選択する際の1つの重要な要素です。 React Developer ToolsとRedux Developer Toolsの2つの優れたツールがあります。どちらもChrome拡張機能としてインストールできます。
React Developer Toolsは階層内のReactコンポーネントを選択するのに最適で、現在の状態や小道具を表示するのにも最適です。

7. リアクションネイティブに反応する
ネイティブ・リアクション。Reactは創始者によると、「ワン・ストップ・ショップ」のライブラリではなく、「一度だけ書く」ライブラリです。あなたはReact Nativeを使ってAndroidとiOS用のネイティブアプリを書くことができます。 Web用の正確なコード行は使用しませんが、ReactJSのメソッドと構造を使用します。詳細はこちらhttps://facebook.github.io/react-native/