首頁  >  問答  >  主體

管理 DDD 中聚合之間的「使用者」實體

我正在嘗試使用 DDD 和六邊形架構將整體式應用程式重寫到模組化整體式應用程式上。首先嘗試提取三個模組(聚合):「Shared」、「User」和「Article」。

據我正確理解,「使用者」和「文章」之間不應創建任何依賴關係。但是,它們都可以使用“共享”模組中的內容。

所以事情是這樣的... 「文章」模組具有 Article 實體,與 User 實體相關。從 DDD 的角度來看,它是特定文章的創建者。將會有更多類似的模組與 User 實體作為資源的作者或擁有者相關。

應該如何實作?是否應該將其移至“共享”?不幸的是,找不到任何特定的資源。 Github 主要包含具有單一聚合的項目,並且沒有諸如 User 實體之類的項目。

P粉775788723P粉775788723171 天前336

全部回覆(1)我來回復

  • P粉215292716

    P粉2152927162024-04-05 09:05:19

    我一直在尋找解決此類問題的不同方法。你可以創建一個共享聚合,沒有人可以說這是錯誤的。但是,我認為最好的解決方案是您建立Person (或People)聚合,其中您可以有一個與ArticleEntity 相關的PersonEntity (或AuthorEntity),聚合之間的關係沒有問題,但我建議您嘗試僅在聚合之間建立關係根。

    這是 Eric Evans 藍皮書的樣本

    請注意,Voyage 是 Aggregate Voyage 中的 AggregateRoot,它與 Location 聚合的 AggregateRoot Location 存在關係。

    回覆
    0
  • 取消回覆