問題タブ [rich-domain-model]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
47 参照

domain-driven-design - リッチ ドメイン モデル アプリケーション内での持続性レイヤーとドメイン レイヤーの分離

をより堅牢にするために をpersistent layerから分離するという概念があります。これは、 でのリポジトリの実際の実装には依存せず、リポジトリ インターフェイスのみに依存します。domain layerdomain layerpersistence layer

これは、次のことを意味します。

さて、どうPersonですか?

ではanemic-domain-model、次のことができます。

Person を永続化レイヤーに入れるのはなぜですか?
実装固有のコードが含まれているためです。
たとえば、JPA 関連のアノテーションが含まれる場合があり、リポジトリと同様に、ドメイン レイヤーにデータストア固有の実装は必要ありません。

Person にはドメインロジックが含まれていないため、anemic-domain-modelで上記を実行できます。つまり、 Person をpersistene レイヤーに配置できます。貧血ドメイン モデル
で は、データは動作から分離されているため、Person の動作は別のサービスによって行われ、Person 自体には書き込まれません。

この場合、 Person にはドメイン固有のロジックが含まれているため、rich-domain-modelでこのレイヤー分離を行うことはできません。

リッチ ドメイン モデルのアプリケーション内で、この層の分離をどのように行いますか?
あるいは必要ないと思っているのかもしれません。