https://qiita.com/seya/items/a655adb340af3b6690b5
色々素敵な記事が既に存在してはいますが、自分自身の理解を深めたく、React FiberのFiberとはなんなのか勉強してみたものをまとめました。 尊敬の念を込めて、大変勉強になった素晴らしい記事たちを先に紹介しときます。
render()
の結果を文字列や配列で返せるようになるのは超嬉しいです。)React Fiberを理解するにあたって重要なキーワードは次の3つです。
FiberはReactのリコンシリエーションの新しいアルゴリズムです。 このためFiberとは何ぞやを理解するためにはリコンシリエーションとは何ぞやを理解する必要があります。
端的に言うと「どの部分に変更が必要か判断すべく、ツリー同士の差分を出すアルゴリズム」です。
詳しくはReactのドキュメントにまとまっていますが、 簡単に解説すると、Reactはご存知の通りVirtual DOMを内部的に保持しており、Stateの更新が起きた時に、 以前のVirtual DOMとStateの更新によって変更が入ったVirtual DOMのdiffを取って最小限のリアルなDOMの更新をするように努めています。
このdiffの取り方・アルゴリズムこそがリコンシリエーションです。 特に重要なポイントとしては以下の2点が挙げられます。