deve.K

エンジニアが未来を切り開く。

React.jsの歴史 進化

react画像

React.jsの世界へようこそ!

なぜこれほどまでにJSの強力なライブラリと呼ばれるようになったか皆様はご存知ですか?

歴史を辿りその答えを私と一緒に見つけていきましょう。

※当ブログでは React.js全ての歴史の内容は含まれません、一部の内容を抜擢しなるべく、分かりやすくまとめていきます。

Reactとは

Reactは、UIコンポーネントに基づいてユーザーインターフェイスを構築するための無料のオープンソース フロントエンド JavaScriptライブラリです。これは、Meta(以前のFacebook)と個々の開発者および企業のコミュニティによって維持されています。

引用元React (JavaScript library) - Wikipedia

より良いコード改善

Meta(旧Facebook)の開発者エンジニアはコードに対するメンテナンスの問題に直面していました。

Facebookアプリの機能が増え続け、アプリを完璧に実行し続けるには人員が必要でした。

人員とアプリの機能が増え続け、時間の流れとともに『カスケード更新』が多発し始め

アプリ自体の処理が困難になる状況に陥ります。

ついに『カスケード更新』に追いつかなくなり

彼らは、その問題を解決する為にプロセスをより効率的にするプロトタイプを作成し、

最も強力なJavaScriptライブラリの1つである、React.jsが後に誕生する事となります。

2010年

Meta(旧FaceBook)のプログラマーは高速で効率的なアプリ開発用JSライブラリの必要性を確信します。

彼らはPHP用のHTMLコンポーネントライブラリの『XHP』を導入し、複合コンポーネントの作成を可能にします。

この『XHP構文』は、後にReactで使用され紹介されますが

しかし、『XHP』には明確な問題がありました。

動的なWebアプリケーションはサーバーへの多くのラウンドトリップを必要とし、『XHP』はこの問題を解決する事ができませんでした。

そのため、Meta『旧Facebook』のエンジニアは、JavaScriptを使用して『XHP』をブラウザーに取り込むように交渉し、6か月間の試用することが許可されました。

結果としてReact.jsとして繋がります。

この時点で『2010年』頃となります。


その翌年『2011年』にReactJSの発明者である『Jordan Walke』は『旧Facebook』のソフトウェアエンジニアです。

彼はJavaScriptライブラリのReact.jsの必要性を認識し、Reactの初期のプロトタイプである、最初のバージョン『FAXJS』に選ばれ

Meta『旧Facebook』のニュースフィードに最初に展開されました。

『2012年』Meta(旧Facebook)は『Instagram』を買収します。

それにより、React.jsはInstagramが必要とする革新的な技術とし明らかになりました。

Instagram』はMeta『旧Facebook』の新しいテクノロジーを採用したかったという理由があります。

そしてInstagramでも展開されていまきす。

この時『Mark Zuckerberg氏』はこう言いました

『私たちの最大の過ちはHTML5に賭けすぎていた』。

彼は、Facebookがすぐに優れたモバイルを提供すると我々に約束したのです。

『2013年』5月にオープンソースとして、React.jsを公開リリースします。

時間の流れとともに、ReactJSは開発者にとってお気に入りのアプリ開発、技術スタックの1つとして仲間入りを致します。

ReactとJSXが『Ruby onRails』で利用可能になり

それからすぐに、『Python』アプリケーションでReactとJSXが利用可能となり

ここからさらに、大企業はこの言語に注目し始めます。

『2014年』にはコミュニティを構築し、『reactjs worldtour』という会議が開かれます。

React.js安定期と主流化

『2015年』に『JordanWalke』は強力な『React Native』フレームワークを公開し発表しました。

Meta『旧Facebook』は、iOS用のReact Nativeが 同年3月にオープンソースになり、『GitHub』で利用可能であることを発表。

このフレームワークは、本当の意味でアプリ開発に革命をもたらし

ここから『Netflix』や『Airbnb』のような大企業はReact.jsを採用し始めていくのです。

新しい『React DeveloperTools』の最初のバージョンがリリースされます。

Reactツールなどが更新され、色々と改善さていき

新しいリリースなどで、世界規模で会議が開かれます

Reactの『ストーリーブック』や『エラーコードシステム』が紹介されていきます。

React.js更なる改善と進化

『2017年』には『Airbnb』が新しいオープンソースライブラリである『React Sketch.app』を発表

これはSketch上でレンダリングが可能なコンポーネントライブラリです。

『2018年』にはReact v16.3.0がリリースされ

その後に『Reactフック』が導入されます。

『2020年』にはReact開発コミュニティから

Reactサーバーコンポーネントを導入しました。

現在(2021年)

React v18に向けてのプラン(新機能)

ライブラリの作者がテストしてフィードバックを送れるようにReact v18 のアルファ版を公開しました。

2021 年 11 月 React v18 アルファ版からベータ版となりました。

React v18リリースに向けての作業を開始


React.js コミュニティ

React.jsコミュニティは活気に満ち溢れています

コミュニティの一員であれば、これからの貴方の手助けとなる事も間違いありません。

彼らはより良いコミュニケーションをオープンで受け入れることを目的としています。

貴方がReact開発者であれば、参加する事をオススメします。

コミュニティ人数は17万人を超えています。

https://www.reactiflux.com/

現在では『slack』から『ディスコード』に移行しております。


細かい箇所は色々と省いて、まとめてしまいましたが React.jsがどのように進化し現在の強力なJSライブラリとなった進化の流れが分かってきたかと思います。

つまりReact.jsは

Meta(旧Facebook)、『Instagram』、『Netflix』のように、世界を統べる大規模なアプリを構築するのに強力なライブラリとなっているという事です。

JavaScript』でアプリケーションのデータを取得し『ブラウザ』にレンダリングするのは、非常にコストが高いDOM操作となります。

それはJSを学ばれてる方なら分かるかと思います。

ですが、React.jsがこの問題を明白な結論に導き最初のライブラリであり、DOM操作を最適化し高速なライブラリを可能にしました。

いかがだったでしょうか?

Wikipedia』読んでも難しい説明多いですよね。

これからReact.jsを学ばれていく方、もしくは現在学ばれてる方々も

React.jsの必要性や貴方が学んでいる言語がどれほど素晴らしいのかが、なんとなく理解できてくれてれば幸いでございます。

本日は以上となります。

最後まで読んで頂きありがとうございます。

プライバシーポリシー