Reactで設計するときに意識していること
コンポーネントを関数として捉える
関数であるということは原則として、
inputに対して一意なoutputが定まること
関数の内部で極力副作用が発生しないこと
原則なので当然例外もある
状態管理
外部サービスとの通信
影響範囲を極小化する
状態管理
stateをなるべくトップレベルのコンポーネントに集約する
そうすると今度はトップレベルのコンポーネントがdirtyになる
状態管理可能なパッケージを限定するとよいのか?
コンポーネントはHTMLを生成する上で必要な関心事以外を極力持たない
業務ロジックは別パッケージに切り出す