Layer Supertype
A type that acts as the supertype for all types in its layer.
レイヤーを構成する全オブジェクト共通の振る舞いを、レイヤー共通の基底クラスに移す
How It Works
- 他のパターンと併用
-
例: Domain Model
-
下記の機能を共通の基底クラスに移す
-
Identity Fieldsを取り扱う処理
- 主キー等
-
-
-
例: Data Mappers
- 全Domain Modelが共通の基底クラスを持っていることに基づいて、
全Domain Modelに共通の操作を全Data Mapper共通の基底に移せる
- 全Domain Modelが共通の基底クラスを持っていることに基づいて、
When to Use It
- レイヤーの全オブジェクト共通機能があるとき
- 著者は自動でやること多し
Example: Domain Object (Java)
class Domain Object...
private Long ID;
public Long getID() {
return ID;
}
public void setID(Long ID) {
Assert.notNull("Cannot set a null ID", ID)
this.ID = ID;
}
...