Fluent React
1. 入口レベルの話
この本は、エンドユーザー視点でReactの使い方を学ぶためのものではなく、 ライブラリ作者の視点でReactの仕組みを学ぶために書かれている。
現代的なUXには、高度かつ頻繁な更新が必要である。 Reactがなぜ人気かというと、UIの「更新」をうまく扱えるからである。
従来の方法では、更新にまつわるパフォーマンス、一貫性、セキュリティに限界があった。
- jQuery
- Side effectful
- 重い
- Polyfill多すぎて冗長
- パフォーマンス悪い
- Backbone
- 状態管理が煩雑
- MVCが密結合
- ボイラープレートが多い
- Composabilityの欠如
- KnockoutJS
- ReactiveにUIを更新できる初めてのライブラリ
- MVVM pattern / ViewModelが間に入る / ViewとVMは2way-binded / ViewはPassive
- MとVの疎結合性や、テスト容易性を担保できる
- ボイラープレートが多い
- VMが肥大化して破綻しがち
- AngularJS
- パフォーマンスが悪化しがち
- FWそのものがやや複雑
- テンプレート構文の管理性が悪い
- 型安全性の欠如
$scope
の理解しにくさ- 開発ツールの少なさ
Reactは従前のライブラリと比べて以下の点で優れていた。
- 宣言的にUIが書ける
- vDOMによりパフォーマンスがよい
- コンポーネントにより管理性や構成性がよい
- Immutabilityによりパフォーマンスや安全性が高い
- プラットフォームを選ばない
- 豊富な開発支援ツール