困難は分割せよ(サブドメイン分割)
#React #設計 #宣言的UIの設計レシピ #コンポーネントツリー
問題解決で最も重要な考え方のひとつ
抽象化とモデリングの違い
困難は分割せよ
https://ja.wikiquote.org/wiki/ルネ%E3%83%BBデカルト
デカルトの言葉
サブドメイン分割
DDDの言葉
→ドメインと問題空間と解決空間
---
#React
【React】「困難は分割せよ」―― 複雑な画面は小さな機能に分けて実装しよう。
イベントの処理を親子で適切に分担する
@sonatard: 分けることで全体像がわからなくなる問題は軽視されがち
分けるにしても全体像がわかる状況を維持しながら分けることは大切
@sonatard: 「コンポーネントが大きくなったから、いくつかに分割する」
というのは、うまくコンポーネント化しないと、見えるべきものが下に隠蔽されて、コードの詳細を追わないと全体像がわからないコードになる
@sonatard: コンポーネント分割で安易にトップダウンで細かいユースケース単位で切り出すより、ボトムアップで実装詳細(private)を機能単位で分けることから始める方が好き
@sonatard: トップダウンの方は明確で質の高い戦略が求められる
抽象度を意識しないと様々な暗黙的なコンポーネント階層が生まれる
ある親コンポーネントに並んでいる子コンポーネントの抽象度は揃っているか?というのは大切
SLAP原則
Deep ModuleとShallow Moduleのトレードオフ
@fumi_sagawa: propsを極力排してコンポーネントは閉じる。「jotaiで複数回使われる状態の共有/TanStack QueryでDB直通」させたいんだけど過激派かな?
最近SPAはめちゃくちゃちっちゃいMVCの集まりだと思ってる