2

私が取り組んだいくつかの DDD アプリケーションでは、エンティティと値オブジェクトの両方が同じ概念に対応することがありました。値オブジェクトは、読み取り専用で使用する大きなリストを取得する場合に特に役立ちました。

2 つを区別するためInfoに、Value Object クラスに追加しました。したがって、Customerエンティティであり、CustomerInfo値オブジェクトでした。

DDDではよくあることですか?または、別の共通の慣習はありますか?それとも、同じ概念をエンティティと値オブジェクトとして同時にモデル化すべきではないのでしょうか?

4

2 に答える 2

1

そのような接頭辞/接尾辞を使用することはDDDに反しているように思えます

ドメインの専門家と話すときは、すべてに名前を付けることに集中する必要があります。私の個人的な好みかもしれませんが、事前に定義された一連の接頭辞を常に使用して常に話すのは快適ではありません. むしろ自由に用語を話し、実装の詳細を隠したいと思います。

ただし、例外が 1 つあります。それは「イベント」という言葉です。その場合、ドメインの専門家に、イベントが発生するものであることを説明する必要があるからです。エンティティと値オブジェクトの違いを彼らに説明するべきではありません。

そうは言っても、私は個人的に継承を使用して、エンティティから値オブジェクトを強調しています。それらの等価関数は異なり、後者のみが ID フィールドを必要とします。

于 2013-05-03T10:52:49.803 に答える