原创 ScheduledThreadPoolExecutor JDK定時任務線程池

https://www.jianshu.com/p/18f4c95aca24 流程: 1 提交任務的時候,任務被包裝成ScheduledFutureTask對象加入延遲隊列並啓動一個woker線程。 2 用戶提交的任務加入延遲隊列時,會按

原创 限界上下文的控制力

限界上下文目的: 不在於如何劃分邊界 而在於如何控制邊界   對於統一語言: 限界上下文是語言的邊界   對於領域模型: 限界上下文是模型的邊界   語言的邊界以及模型的邊界可以 界定問題域   對於系統架構: 限界上下文確定了應用邊界

原创 領域場景分析提煉領域知識

組成場景的要素: 6W模型: Who:用戶 、 What:業務功能 、 Why: 業務價值 、 Where:domain 、 When:應用層對domain層調用的時序 、 How:業務實現   領域場景分析 前提: 識別參與該場景的用

原创 限界上下文與架構

限界上下文對 領域驅動架構 有直接到影響 識別限界上下文 與 上下文映射 都是重要過程   限界上下文 是 邏輯架構 以及 物理架構的 參考模型 上下文映射 體現了系統架構的通信模型   限界上下文不僅僅作用於領域層 以及 應用層 是架構

原创 從工作邊界識別限界上下文

限界上下文劃分業務邊界: 從業務相關性(內聚)判斷業務的歸屬   基於團隊合作劃分工作邊界: 幫助我們確定限界上下文合理的工作粒度   按照團隊合作的角度劃分限界上下文,其實是一個動態的過程、演進的過程。   從團隊合作層面看待限界上下文

原创 識別限界上下文

從業務邊界識別限界上下文 領域驅動設計圍繞着“領域”來開展軟件設計。: 1 明確了系統的問題域和業務期望 2 梳理出主要的業務流程,這些業務流程體現了各種參與者在這個過程中通過業務活動共同協作,最終完成具有業務價值的領域功能。參與角色(W

原创 上下文映射

降低業務複雜度的有效手段: 分治法   軟件設計難題: 如何分 限界上下文如何確定   限界上下文之間怎麼合: 上下文映射   分是合的基礎 隔離是複用的前提   上下文映射:“合”就是要儘可能地降低 不同上下文 之間的耦合。   意義:

原创 金字塔原理讀書筆記 一 爲什麼使用金字塔結構

Why 表述相同的內容,使用金字塔結構自頂向下展開供受衆閱讀,受衆更容易掌握全局思想。 How 1 歸類分組,將思想組件成金字塔 舉例:買生活用品 由於沒有對所需物品分類整理,受衆很難記住 2 對每個分類進行抽象概括 如 葡萄、橘子

原创 代碼模型

在 理解了 限界上下文 以及 分層架構 的本質基礎上 需要確認系統的代碼模型   每個團隊 無需 都遵守一套 代碼模型 在同一個項目中 必須 1遵守 同一個代碼模型 並需要 2 知道 如此劃分代碼的 意義 與價值   代碼模型設計 之

原创 金字塔原理讀書筆記 零 序言

1 金字塔結構組織的思想 和 未能經過組織的思想 2  受衆最容易理解的順序: 先 主要的、抽象的思想(結論)  再  次要的、爲主要思想提供支撐的思想(論據) 結論是由論據推理得出,先有論據再有結論。傳播給受衆要反轉順序。   3 爲

原创 分層架構的演化

架構設計最高原則: 高內聚、松耦合 的軟件系統架構   整潔架構   設計出乾淨的應用層 以及 領域層 僅僅關注業務邏輯 不包含任何 具體技術實現   優點:完成領域與技術之間的完全隔離   領域模型就是業務邏輯的模型,它應該是完全純粹

原创 上下文映射的通信集成模式

防腐層與開放主機服務 目的:降低限界上下文之間的耦合關係   防腐層:(下游限界上下文對 上游限界上下文變化的隔離) 是什麼:設計思想“間接”的一種體現 方法:通過引入一個間接的層,就可以 目的:有效隔離限界上下文之間的耦合 設計模式:間

原创 從應用邊界識別限界上下文

質量屬性: 關乎質量屬性的問題 視爲在將來可能會發生,其實就是“風險(Risk)”。   架構是重要的東西,是不容易改變的決策。 未曾預測到系統存在的風險,不幸它又發生了,帶給系統架構的改變可能是災難性的   爲什麼說限界上下文是領域驅動

原创 封裝 繼承 多態 抽象 拷貝

面向對象“四大特性 ” : 封裝、繼承、多態、“抽象 ”   封裝 功能內聚 降低耦合度 以什麼樣的方式暴露哪些信息 對屬性、數據、部分內部敏感行爲實現隱藏 設計模式七大原則之一的迪米特法則就是對於封裝的具體要求,即 A 模塊使用 B 模

原创 上下文映射的團隊協作模式

原則: 各司其職 權責分明 從組織角度看: 預防一個團隊 權利膨脹 團隊勢力擴大到整個組織 從團隊角度看: 避免自己權利被壓縮,導致話語權減小 如何平衡? 滿足合理分配職責的前提下,謹慎地確保每個限界上下文的粒度。   領域驅動設計根據團