Reactのドキュメンタリー動画を見る
React.jsのドキュメンタリー動画を見て学びや感想を連ねていく
React誕生当時の背景
- クライアントサイドが多機能化し膨れていったことでクライアントが遅くなっていた
- サーバーサイドだけで解決できる問題ではなかった
”one of the thing we fought against for a really long time was just growing JavaScript sizes so as we moved more and more stuff to the client, the client got slower and slower so we actually swung the pendulum towards server-side rendering and towards you know minimal amounts of JavaScript for a while.”
(かなり長い間、私たちが戦ってきたことの1つは、JavaScriptのサイズが増えることで、ますます多くの機能をクライアント側に移動するにつれて、クライアントが遅くなっていったことです。そのため、一時的にはサーバーサイドレンダリングや、JavaScriptの最小限の使用に傾斜しました。)
“And there was this feeling that we knew that what we were doing for client-side development wasn’t working but also that server side wasn’t going to get us all the way there. So I think that was the kind of environment that React came out of.”
(クライアントサイドの開発で行っていることがうまくいっていないことはわかっていましたが、同時にサーバーサイドだけでは完全な解決にはならないという感覚がありました。そのような環境がReactの誕生につながったと思います。)
Reactのロゴの由来
One of the original name of react was FBolt, which is Function Bolt.
(Reactの元々の名前の一つはFBoltであり、これはFunction Boltの略称です。)
よく見るとロゴの中央にボルトがある。
(一回「Reactのロゴってなんであんなデザインなんだ?」と思って調べても分からなかったので唐突に判明してめちゃくちゃ嬉しかったです)
現在のフロントエンドで最も難しいこと = 更新
(The thing he told me is) updates.
You need to find the DOM node that is going to change, you need to change the listener to the click event and remove it and do all of this, which is pretty complicated.
And this was also a massive source of bugs within the facebook codebase.
(更新です。変更されるDOMノードを見つけ、クリックイベントのリスナーを変更し、削除する、これらすべてを行う必要があります。これはかなり複雑です。そして、これはFacebookのコードベース内でも大きなバグの源でした。)
この説明を受けたChedeau氏も「そんなにうまくいくはずがない」と思いつつReact.jsを試したところ、30分ほどで書いたReact.jsを使ったコードが、それまで徹底的に性能を追求してきたChedeau氏のコードと同程度の性能を発揮し、それ以降React.jsに真剣に取り組もうと決めたそう。
React.jsの考え方が斬新で革新的だっただけに、Facebook社内でさえ当初は懐疑的な意見が多かった模様。