フロントエンド開発で、UIの状態を示すStateと、ビジネスロジックの核となるDomain Modelの型を混同していませんか?
例えばレストランの注文。入力フォームにおける「数量」は、未入力時の空文字も許容するstring | number型。しかしAPIへ送信するDomain Modelにおける「数量」は厳密にnumber型でなければなりません。
この2つを同一視すると、UIの都合でDomain Modelの型定義が汚染され、不要な型ガードがコンポーネントに散乱します。本発表では、StateとDomain Modelの間に明確な境界を引き、両者を変換する層を設けることで関心事を分離。
そもそも実務において、この境界線を見つけることがまず難易度が高い問題があります。
本セッションでは「型の境界線」の見つけ方を具体例とともにお話しします。