第一節(jié) DDD相關(guān)概念

  • 什么是DDD
  • DDD相關(guān)概念

1.1什么是DDD

領(lǐng)域驅(qū)動(dòng)設(shè)計(jì),即Domain Driven Design(DDD)。

  • DDD是一套完整而系統(tǒng)的設(shè)計(jì)理論與方法,使得你的設(shè)計(jì)思路能夠更加清晰,設(shè)計(jì)過程更加規(guī)范。
  • DDD 善于處理與領(lǐng)域相關(guān)的擁有高復(fù)雜度業(yè)務(wù)的產(chǎn)品開發(fā)

總之,DDD是專門為解決復(fù)雜性而誕生一套完整的理論方法。

DDD落地實(shí)現(xiàn)離不開Clean架構(gòu)、六邊形架構(gòu)、CQRS、Event Source等思想。

1.2 DDD相關(guān)概念

DDD有很多晦澀難懂,一一列舉下,按照自己的理解,解釋下,不一定準(zhǔn)確。

  • 領(lǐng)域:用來限定業(yè)務(wù)邊界和范圍

  • 子域:領(lǐng)域進(jìn)一步劃分就是子域

  • 核心域:核心域應(yīng)該就是公司的主要業(yè)務(wù),簡單來說就是公司最盈利的業(yè)務(wù)。

  • 通用域:見明知意,就是不管什么業(yè)務(wù),都會(huì)涉及到比較通用的范疇,例如登錄、授權(quán)、網(wǎng)關(guān)等。隨著業(yè)務(wù)的發(fā)展也可能發(fā)展成為核心域。

  • 支撐域:支撐業(yè)務(wù)系統(tǒng)正常運(yùn)行的業(yè)務(wù),但是不處于核心地位。優(yōu)先級(jí)較低,當(dāng)然隨著業(yè)務(wù)的發(fā)展也可能發(fā)展成為核心域;例如:物流對于淘寶來說一開始就是支撐域,后來發(fā)展成為了核心域

  • 通用語言:在事件風(fēng)暴過程中,通過團(tuán)隊(duì)交流達(dá)成共識(shí)的,能夠簡單、清晰、準(zhǔn)確描述業(yè)務(wù)涵義和規(guī)則的語言

  • 限界上下文:通用語言和領(lǐng)域?qū)ο?,提供的上下文環(huán)境,保證在領(lǐng)域之內(nèi)的一些術(shù)語、業(yè)務(wù)相關(guān)對象等(通用語言)只有唯一一個(gè)確切的含義。領(lǐng)域邊界就是通過限界上下文來定義的,是劃分微服務(wù)的重要依據(jù)。

  • 聚合:由業(yè)務(wù)和邏輯緊密關(guān)聯(lián)的實(shí)體和值對象組合而成的。聚合是數(shù)據(jù)修改和持久化的基本單元,每一個(gè)聚合對應(yīng)一個(gè)倉儲(chǔ),實(shí)現(xiàn)數(shù)據(jù)的持久化特點(diǎn):高內(nèi)聚、低耦合,它是領(lǐng)域模型中最底層的邊界,可以作為拆分微服務(wù)的最小單位

  • 聚合根:如果把聚合比作組織,聚合根則是組織的負(fù)責(zé)人,聚合根也叫做根實(shí)體,它不僅僅是實(shí)體,還是聚合的管理者

  • 實(shí)體:有 ID 標(biāo)識(shí),通過 ID 判斷相等性,ID 在聚合內(nèi)唯一即可。

  • 值對象 :無 ID,不可變,無生命周期,用完即扔

  • 領(lǐng)域事件:領(lǐng)域事件是領(lǐng)域模型中非常重要的一部分,用來表示領(lǐng)域中發(fā)生的事件。一個(gè)領(lǐng)域事件將導(dǎo)致進(jìn)一步的業(yè)務(wù)操作,在實(shí)現(xiàn)業(yè)務(wù)解耦的同時(shí),還有助于形成完整的業(yè)務(wù)閉環(huán),可以通過event,mq等實(shí)現(xiàn),達(dá)到最終一致性,和解耦目的


    image.png

跨多個(gè)實(shí)體的業(yè)務(wù)邏輯通過領(lǐng)域服務(wù)來實(shí)現(xiàn),跨多個(gè)聚合的業(yè)務(wù)邏輯通過應(yīng)用服務(wù)來實(shí)現(xiàn)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容