GitHub - kgrzybek/modular-monolith-with-ddd: DDD單體模組化架構.NET案例原始碼
採用領域驅動設計方法的全模組化Monolith的 .NET應用程式。點選標題進入。
領域模型原則和屬性:
領域模型是系統中的中心和最關鍵部分,應該特別注意設計。以下是一些應用於每個模組的域模型的關鍵原則和屬性:
- 高水平的封裝
private預設情況下,所有成員都是內部的。
- 高水平的PI(永續性無知)
不依賴於基礎設施,資料庫和其他東西。所有課程都是POCO。
- 豐富的行為
所有業務邏輯都位於域模型中。沒有洩漏到應用程式層或其他地方。
- 低水平的原始觀察
Entites的原始屬性使用ValueObjects組合在一起。
- 商業語言
在此有界上下文中使用的業務語言中命名的所有類,方法和其他成員。
模組之間的整合僅使用Integration Events和In Memory Events Bus作為代理以非同步方式進行。這樣,模組之間的耦合最小,並且僅存在於Integration Events的結構中。
模組不共享資料,因此不可能並且想要建立跨越多個模組的事務。為確保最大可靠性,使用了發件箱/收件箱模式。它們相應地提供“至少一次交付”和“至少一次處理”。
相關文章
- github-kgrzybek/modular-monolith-with-ddd:.NET基於領域驅動設計方法的模組化Monolith應用原始碼GithubMono原始碼
- 模組化單體架構綜合指南架構
- .NET遵循CQRS-ES架構的EventFlow的DDD + CQRS + Event-sourcing原始碼架構原始碼
- 基於乾淨架構使用原始SQL和DDD實現.NET Core REST API開源案例架構SQLRESTAPI
- 嵌入式軟體架構設計-模組化架構
- .NET 8 + Blazor 多租戶、模組化、DDD框架、開箱即用Blazor框架
- .Net Core Logging模組原始碼閱讀原始碼
- booking-microservices:基於.Net Core的CQRS、DDD、垂直切片架構、事件溯源案例ROS架構事件
- 從單體架構遷移到 CQRS 後,DDD 並不可怕架構
- iOS 元件化/模組化架構設計實踐iOS元件化架構
- JavaScript 模組化及 SeaJs 原始碼分析JavaScriptJS原始碼
- jQuery原始碼分析系列 : 整體架構jQuery原始碼架構
- 架構-初識DDD架構
- iOS架構:AOP實現區域性模組化iOS架構
- 軟體架構之前後端分離與前端模組化發展史架構後端前端
- 自動化的軟體架構 | esilva.net架構
- HarmonyOS單模組編譯與原始碼導讀編譯原始碼
- 如何組織軟體模組的程式碼結構?
- 單體架構到垂直架構架構
- Spring Boot下的一個DDD案例原始碼介紹Spring Boot原始碼
- 精盡 MyBatis 原始碼分析 - 整體架構MyBatis原始碼架構
- 原始碼分析三:OkHttp(1)—總體架構原始碼HTTP架構
- 【Mybatis原始碼解析】- 整體架構及原理MyBatis原始碼架構
- 為“架構”再建個模:如何用程式碼描述軟體架構?架構
- 排隊免單系統原始碼架構分析原始碼架構
- 「從零單排canal 05」 server模組原始碼解析Server原始碼
- 「從零單排canal 07」 parser模組原始碼解析原始碼
- 「從零單排canal 06」 instance模組原始碼解析原始碼
- OpenMLDB 線上模組架構解析架構
- EDP .Net開發框架--組織架構框架架構
- Android 基於註解IOC元件化/模組化的架構實踐Android元件化架構
- 前端模組化之AMD與CMD原理(附原始碼)前端原始碼
- ABP vnext模組化架構的最佳實踐的實現架構
- Netty-Channel架構體系原始碼解讀Netty架構原始碼
- MongoDB原始碼分析之Command體系架構CJMongoDB原始碼架構
- Kafka體系架構、命令、Go案例Kafka架構Go
- httprunner3原始碼解讀(1)簡單介紹原始碼模組內容HTTP原始碼
- Swoole 原始碼分析——記憶體模組之記憶體池原始碼記憶體