/note/tech

React と Value Object で凝集度を高める

useStateの引数にValue Objectを設定、状態変更時はValue Objectの新しいインスタンスをセットする。

コンポーネントのロジックはValue Objectのメソッドを利用する(ドメインロジックをValue Objectに寄せる)、と。

Modelにあたるコードはどこに配置すればいいだろうか。

普通に/models的なディレクトリを切ればいいかな?

↑の記事ではuseStateの引数にオブジェクトを渡すな(プリミティブ型にしろ)とあったが、原則不変・変更があればインスタンス作り直しのValue Objectなら許容できそう。