私はDDDに不慣れで、貧弱なモデルのトランザクションスクリプトアプリ、または単にBig Balls of Mudでのみ働いていたので、私が乱用した用語を許してください。
ドメインモデルとリポジトリの適切な分離を理解しようとしています。(信じられないほど単純化された)オブジェクトをステータス(戻り値enumerable
)またはIDでクエリする必要があると仮定して、データベースからのドメインオブジェクトを構築する適切な方法は何ですか。
- ファクトリはオブジェクトを構築し、DIedリポジトリを使用してメソッドを公開する必要が
GetByStatus()
ありGetByID()
ますか? - DTOからドメインモデルを構築する方法を知っていて、リポジトリを直接呼び出す必要がありますか?
- ドメインモデルには、IDによる取得用のコンストラクターがあり、DIedリポジトリを使用して初期状態をロードし、リストに他の(?)メソッドを使用する必要がありますか?
私は最善の方法が何であるか本当にわかりません、そしてこの質問はそれぞれを擁護する答えを持っています(これらは確かに相互に排他的です)。