本日も引き続き「現場で役立つシステム設計の原則」を読み進めてます。
本日は主にドメインモデルの考え方について。
Contents
ドメインモデルの考え方
要点
- 業務的な関心ごととドメインモデルの結合
- 分析、設計、実装、それぞれのフェーズでの考え方
- なるべく具体的で業務に直結したオブジェクトを設計する
- 大きい単位はパッケージにする
- 関心ごとはクラスにする
- 業務フロー図とパッケージ図
- 業務の関心ごとというのは主にイベント(取引データ系)とリソース(マスタ系)とサマリー系(集計と履歴)
- 業務上の約束事をメソッドにする
- 業務関心をメモしていく
- 業務の言葉とコードを一緒にする
- ドメインをボトムアップで業務の関心ごとから再構成する
感想
MVCいうとModelにやや近いでしょうか。肥大化するモデルを分割、整理しようというのがドメインモデルのメリットの1つでもあるようです。
リンク先はMVCとドメインモデルの関連に関して。まとまっててわかりやすいなー。私もこれぐらいすっきり説明できるようになりたい。