ドメイン駆動設計入門
ドメイン駆動設計とは
- ドメイン --- プログラムを適用する対象となる領域
- ドメインモデル --- 現実の事象あるいは概念を抽象化した概念
- ドメインオブジェクト --- モデルをソフトウェア上で動作するモジュールとして表現したもの
これらは、
- ドメインエキスパートと開発者が協力して作っていく
- 必要に応じて適宜取捨選択を行いながら作る
- これらは互いに影響しあい常に反復的に変化していくべき
値オブジェクト
- システムならではの値の表現
- プリミティブな値が持つ性質がそのまま適用される
特徴
- 不変
- 一度作成したら値自身を変更することはできない
- 交換が可能
- 変数への代入により値を交換することはできる
- 等価性によって比較する
- 属性によって識別される
equals
メソッド等により値同士の透過性を比較できる