DTO
#設計
DTO(Data Transfer Object)
値を受け渡す事のみを目的とするオブジェクト
Value Object
とは違い、値は変更可能なのでsetterメソッドを持つ
重たいリモートコールを使ったデータの移行が目的
DTOを介してサーバーとクライアントがやり取りするとドメイン知識は失われてしまう
DTOのようなものを使うとよいのはプレゼンテーション層のモデルとドメインモデルとの間に大きなミスマッチがある場合
こういうときは
Presentation Model
を使う
DTOを使うコストを過小評価するな。 それは深刻かつ困難なものなのだ—— オブジェクトリレーショナルマッピングに次ぐコストと苦労が強いられるぞ。