私が取り組んだDDDに続くアプリケーションでは、サービス+リポジトリ+リポジトリとサービスのインターフェイスを含むサービスレイヤーが存在する傾向があります。これらはすべて同じアセンブリに存在しますが、ドメインモデルは別のアセンブリに存在します。この1つの大きなプロジェクトでは、ドメインモデルに適合しないものがすべて散らかっているように感じます。
DDDの原則とパターンに従うアプリケーションでは、リポジトリとそれらが実装するインターフェイスをどのようにパッケージ化しますか?DDDアプリケーションのさまざまな論理部分をパッケージ化する(または一般的にはパッケージ化する)ためのベストプラクティスは何ですか?すべての論理パーティションは独自のアセンブリに存在する必要がありますか?それも重要ですか?