3
ORMを使用したDDDのビジネスロジックはどこに行くべきですか?
私は過去にMDA(モデル駆動型アーキテクチャ)ツールを使用しましたが、UMLを介してモデル化し、これにより、とりわけビジネスエンティティ(ドメインモデル)とORM(マッピングなど)が生成されました。 ドメインで動作するビジネスコードとサービスの多くはモデルの一部であり、リポジトリはビジネスエンティティを返していました(そのため、別のORMに切り替えることはできませんでした(望んでいなかった))。 しかし、今はプロジェクトを始めており、DDDについて考えたいと思います。 これまでのところ、ビジネスロジックをドメインモデルに入れ、リポジトリを介してORM(どちらを選択した場合でも)で作業するように感じています。ただし、アプリケーションのORM部分に引き続きMDAツールを使用したい場合、ここで作成されたモデルは非常に貧弱です(つまり、ビジネスロジックが含まれていません)。同様に、ORMにエンティティフレームワーク(.net)またはNHibernateを使用した場合、それも貧血モデルになります。NHibernateをそのまま使用した場合、ビジネスロジックをどこに置くかわかりません。 私はこのように考えるのは正しいですか、つまりDDDではドメイン内のすべてのビジネスロジックを使用し、リポジトリ経由で永続化するためにORMを使用するだけですか?