GitHub - kgrzybek/modular-monolith-with-ddd: DDD單體模組化架構.NET案例原始碼

banq發表於2019-08-26

採用領域驅動設計方法的全模組化Monolith的 .NET應用程式。點選標題進入。


GitHub - kgrzybek/modular-monolith-with-ddd: DDD單體模組化架構.NET案例原始碼
領域模型原則和屬性:
領域模型是系統中的中心和最關鍵部分,應該特別注意設計。以下是一些應用於每個模組的域模型的關鍵原則和屬性:

  1. 高水平的封裝

private預設情況下,所有成員都是內部的。
  1. 高水平的PI(永續性無知)

不依賴於基礎設施,資料庫和其他東西。所有課程都是POCO。
  1. 豐富的行為

所有業務邏輯都位於域模型中。沒有洩漏到應用程式層或其他地方。
  1. 低水平的原始觀察

Entites的原始屬性使用ValueObjects組合在一起。
  1. 商業語言

在此有界上下文中使用的業務語言中命名的所有類,方法和其他成員。

模組之間的整合僅使用Integration Events和In Memory Events Bus作為代理以非同步方式進行。這樣,模組之間的耦合最小,並且僅存在於Integration Events的結構中。
模組不共享資料,因此不可能並且想要建立跨越多個模組的事務。為確保最大可靠性,使用了發件箱/收件箱模式。它們相應地提供“至少一次交付”和“至少一次處理”。
 

相關文章