培訓(xùn)時(shí)間:

領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)與實(shí)踐——軟件核心復(fù)雜性應(yīng)對(duì)之道

  培訓(xùn)講師:曾老師

  時(shí)間地點(diǎn):
2025年08月30-31日 深圳
2025年10月17-18日 深圳
2025年11月15-16日 深圳
2025年12月27-28日 深圳

  培訓(xùn)費(fèi)用:3980

  贈(zèng)送積分:3980

    服務(wù)電話:010-82593357

領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)與實(shí)踐——軟件核心復(fù)雜性應(yīng)對(duì)之道詳細(xì)內(nèi)容

領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)與實(shí)踐——軟件核心復(fù)雜性應(yīng)對(duì)之道

【開課時(shí)間】 2025年8月30-31日 ( 周六、日)10月17-18日 (周五、六)

11月 15-16日( 周六、日)  12月27-28日  (周六、日)

【培訓(xùn)地點(diǎn)】:深圳

【培訓(xùn)費(fèi)用】:3980元/人(培訓(xùn)費(fèi)用、資料費(fèi)、茶歇、結(jié)業(yè)證書、稅費(fèi),一年內(nèi)可免費(fèi)復(fù)訓(xùn))

注:此課程我們可以提供企業(yè)內(nèi)部培訓(xùn)與咨詢服務(wù)

 

解決的關(guān)鍵問題

領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(Domain Driven Design,DDD)自誕生以來已有十幾年時(shí)間,它是針對(duì)復(fù)雜系統(tǒng)設(shè)計(jì)的一套軟件工程方法。由于面向?qū)ο蠓治雠c設(shè)計(jì)(OOA/OOD)的廣泛應(yīng)用,并且與前期需求分析和后期系統(tǒng)開發(fā)有機(jī)銜接,在行業(yè)產(chǎn)生廣泛的影響,具有深遠(yuǎn)的指導(dǎo)意義。但是,由于軟件的復(fù)雜度越來越龐雜和微服務(wù)的興起,領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)通過分而治之控制軟件規(guī)模,即一個(gè)大型復(fù)雜軟件都是由一個(gè)或多個(gè)微服務(wù)組成的,系統(tǒng)中的每個(gè)微服務(wù)可被獨(dú)立部署,微服務(wù)之間松耦合,且每個(gè)微服務(wù)只關(guān)注完成自己的任務(wù)并很好地完成任務(wù)。所以,領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的思想和微服務(wù)架構(gòu)風(fēng)格的融合,從而指導(dǎo)復(fù)雜業(yè)務(wù)需求的軟件系統(tǒng)的設(shè)計(jì)、開發(fā)與維護(hù),降低了系統(tǒng)業(yè)務(wù)分析的復(fù)雜度和技術(shù)實(shí)現(xiàn)的難度。

隨著業(yè)務(wù)領(lǐng)域的知識(shí)體系的龐大和復(fù)雜,業(yè)務(wù)處理邏輯或業(yè)務(wù)規(guī)則業(yè)隨之復(fù)雜、難于理解、難于清晰的表達(dá)等,并且其中夾雜的大量信息與軟件需要解決的問題無關(guān)。所以,在復(fù)雜系統(tǒng)設(shè)計(jì)方面存在如下主要問題:

規(guī)模造就的復(fù)雜度:隨著需求的變化,系統(tǒng)規(guī)模會(huì)不斷擴(kuò)張,軟件復(fù)雜度也不斷增長,除了需求功能本身的增加,還有功能之間的聯(lián)系變的牽一發(fā)而動(dòng)全身,并且這個(gè)復(fù)雜度的增長往往是指數(shù)級(jí)的趨勢(shì),這樣造成了軟件相關(guān)人員需要掌握大量信息,提升自己對(duì)業(yè)務(wù)需求和軟件的理解。

結(jié)構(gòu)造就的復(fù)雜度:為了滿足非功能性質(zhì)量需求,例如高性能,高并發(fā)和高可靠性,在系統(tǒng)中引入緩存、并發(fā)處理、異步消息、海量數(shù)據(jù)的分布式存儲(chǔ)和高效分布式計(jì)算等讓系統(tǒng)在結(jié)構(gòu)上變得復(fù)雜;為了保持系統(tǒng)有序,提高代碼可維護(hù)性,利用分層架構(gòu)達(dá)到不同層次職責(zé)分離,設(shè)計(jì)的方案在架構(gòu)上帶來了溝通成本的增加和管理上的困難;為了降低業(yè)務(wù)復(fù)雜度,拆分不同的子領(lǐng)域,往往因守不住領(lǐng)域的邊界而喪失了拆分的價(jià)值,系統(tǒng)結(jié)構(gòu)會(huì)變的越來越混亂,會(huì)讓軟件的修改變得不確定。

變化造就的復(fù)雜度:在設(shè)計(jì)軟件系統(tǒng)時(shí),設(shè)計(jì)人員是無法完全預(yù)測(cè)系統(tǒng)的變化,一方面可能過于考慮變化的影響,過度的設(shè)計(jì)付出的成本就是浪費(fèi),另一方面,如果不對(duì)變化做任何的預(yù)測(cè),又因不停的變化而不斷的付出較大研發(fā)成本。

培訓(xùn)對(duì)象

研發(fā)總監(jiān)、研發(fā)經(jīng)理/項(xiàng)目經(jīng)理/技術(shù)經(jīng)理/產(chǎn)品經(jīng)理、系統(tǒng)工程師、軟件研發(fā)程序員和工程師、產(chǎn)品規(guī)劃專員。

課程收益

面對(duì)大型復(fù)雜業(yè)務(wù)系統(tǒng)設(shè)計(jì)思想和設(shè)計(jì)理念的提升;

傳統(tǒng)的軟件系統(tǒng)設(shè)計(jì)分析方法(OOA/OOD)的優(yōu)點(diǎn)和存在的問題;

領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的重點(diǎn)和難點(diǎn),以及它解決問題的方法和過程;

從領(lǐng)域問題到領(lǐng)域解決方案,全過程每個(gè)節(jié)點(diǎn)步驟的思想和方法;

領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)中,上下文切分的思路,微服務(wù)關(guān)鍵問題的思考;

領(lǐng)域驅(qū)動(dòng)建模中,從分析建?!O(shè)計(jì)建模→實(shí)現(xiàn)建模的技術(shù)手段和思路。

 

詳細(xì)課程大綱

4.1 領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)--歷史背景

當(dāng)前軟件系統(tǒng)開發(fā)面對(duì)的難題:系統(tǒng)需求的不確定性和易變性,以及系統(tǒng)的復(fù)雜性。

⑴   當(dāng)前存在的問題是什么?

系統(tǒng)的復(fù)雜性:問題的復(fù)雜性、實(shí)現(xiàn)的靈活性、行為描述的隨意性和管理開發(fā)過程的困難性;

⑵   領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的目標(biāo)是什么?

軟件復(fù)雜性的應(yīng)對(duì)之道:大型復(fù)雜業(yè)務(wù)系統(tǒng)分而治之的思想!

l  規(guī)模--通過分而治之控制規(guī)模;

l  結(jié)構(gòu)--通過邊界保持清晰有序;

l  變化--順應(yīng)變化方向。

⑶   領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的方法是什么?

領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的策略:大型復(fù)雜業(yè)務(wù)系統(tǒng)的領(lǐng)域建模方法體系!

l  規(guī)模--以子領(lǐng)域、限界上下文對(duì)問題空間與解空間分而治之;

l  結(jié)構(gòu)--以分層架構(gòu)隔離業(yè)務(wù)復(fù)雜度與技術(shù)復(fù)雜度,形成清晰的架構(gòu);

l  變化--經(jīng)領(lǐng)域抽象,以聚合為核心的領(lǐng)域建模,響應(yīng)需求變化。

4.2 領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)--設(shè)計(jì)思想

講述領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)基本概念、主要內(nèi)容、設(shè)計(jì)思想和設(shè)計(jì)過程,準(zhǔn)確領(lǐng)悟領(lǐng)域驅(qū)動(dòng)的戰(zhàn)略設(shè)計(jì)和戰(zhàn)術(shù)設(shè)計(jì)的內(nèi)容及關(guān)系。

⑴   領(lǐng)域驅(qū)動(dòng)的概念、歷史根源和智慧;

⑵   領(lǐng)域驅(qū)動(dòng)的問題和步驟(六個(gè)問題和六個(gè)步驟);

⑶   領(lǐng)域模型的概念和主要思想;

⑷   領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的主要內(nèi)容和過程;

⑸   準(zhǔn)確領(lǐng)悟領(lǐng)域驅(qū)動(dòng)的戰(zhàn)略設(shè)計(jì)和戰(zhàn)術(shù)設(shè)計(jì),以及戰(zhàn)略和戰(zhàn)術(shù)的關(guān)系。

4.3 領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)--全局分析

全局分析的目標(biāo)就是確定問題空間,在統(tǒng)一語言的指導(dǎo)下,通過各種可視化手段,由領(lǐng)域?qū)<遗c團(tuán)隊(duì)一起完成對(duì)問題空間的探索,幫助領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)對(duì)準(zhǔn)問題,輸出價(jià)值需求和業(yè)務(wù)需求。

價(jià)值需求既是目標(biāo)系統(tǒng)的目標(biāo),也是對(duì)目標(biāo)系統(tǒng)問題空間的界定和約束,它指導(dǎo)著業(yè)務(wù)需求分析。

業(yè)務(wù)需求由動(dòng)態(tài)的業(yè)務(wù)流程和靜態(tài)的業(yè)務(wù)活動(dòng)組成,二者的結(jié)合依靠業(yè)務(wù)場(chǎng)景按照時(shí)間點(diǎn)和業(yè)務(wù)目標(biāo)對(duì)業(yè)務(wù)流程的切分。

通過運(yùn)用商業(yè)模式畫布,可以獲得組成價(jià)值需求的利益相關(guān)者、系統(tǒng)愿景和系統(tǒng)范圍。

業(yè)務(wù)流程梳理可以幫助團(tuán)隊(duì)對(duì)問題空間的各條業(yè)務(wù)線構(gòu)成一個(gè)整體認(rèn)識(shí),弄清楚各種角色如何參與到一個(gè)完整的流程中,流程的時(shí)序性也可以避免識(shí)別業(yè)務(wù)活動(dòng)時(shí)可能出現(xiàn)的缺失。

業(yè)務(wù)流程圖與服務(wù)藍(lán)圖以可視化的方式形象地呈現(xiàn)每一個(gè)提供了業(yè)務(wù)價(jià)值的業(yè)務(wù)流程。

業(yè)務(wù)活動(dòng)是角色與目標(biāo)系統(tǒng)之間的一次功能性交互,是體現(xiàn)了服務(wù)價(jià)值的功能行為。

一直以來,該如何確定業(yè)務(wù)需求層次,劃分業(yè)務(wù)需求粒度,總是眾說紛紜,沒有一個(gè)客觀的標(biāo)準(zhǔn);業(yè)務(wù)活動(dòng)將目標(biāo)系統(tǒng)視為一個(gè)黑盒子,從功能性交互的完整性保證了每個(gè)業(yè)務(wù)活動(dòng)都是正交的,就無需再考慮業(yè)務(wù)活動(dòng)的層次和粒度,或者說,只要確定了完整性,保障了正交性,業(yè)務(wù)活動(dòng)的層次與粒度也就確定下來了。

業(yè)務(wù)活動(dòng)可以使用用例、用戶故事或事件風(fēng)暴中的事件來表達(dá)。

業(yè)務(wù)活動(dòng)是全局分析階段的基本業(yè)務(wù)單元,它的輸出對(duì)于架構(gòu)映射與領(lǐng)域建模具有重要意義:

架構(gòu)映射:業(yè)務(wù)活動(dòng)是識(shí)別限界上下文、確定上下文映射的基礎(chǔ),同時(shí),它的粒度正好對(duì)應(yīng)每個(gè)限界上下文向外公開的服務(wù)契約;

領(lǐng)域模型:業(yè)務(wù)需求分析細(xì)化的業(yè)務(wù)活動(dòng)既是領(lǐng)域分析建模的重要參考,同時(shí)又作為服務(wù)場(chǎng)景成為場(chǎng)景驅(qū)動(dòng)設(shè)計(jì)的起點(diǎn)。

全局分析是領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)統(tǒng)一過程的起點(diǎn),它的目的是探索問題空間,使團(tuán)隊(duì)就問題空間的價(jià)值需求和業(yè)務(wù)需求達(dá)成共識(shí),并在統(tǒng)一語言的指導(dǎo)下將其清晰地呈現(xiàn)出來。只有問題定義清楚了,團(tuán)隊(duì)才能更好地尋求解決方案。

4.4 領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)--架構(gòu)映射

⑴  軟件架構(gòu)及映射概念

介紹軟件架構(gòu)的概念定義。

軟件架構(gòu)模式:

MVC架構(gòu)、分層架構(gòu)、DCI架構(gòu)、CQRS架構(gòu)、微服務(wù)分布式架構(gòu)等。

架構(gòu)映射

架構(gòu)映射成為獲得架構(gòu)設(shè)計(jì)的主要設(shè)計(jì)手段。價(jià)值需求的利益相關(guān)者、系統(tǒng)愿景和系統(tǒng)范圍可映射系統(tǒng)上下文;業(yè)務(wù)服務(wù)的歸類和歸納可映射為限界上下文,系統(tǒng)上下文與限界上下文共同組成系統(tǒng)架構(gòu)的重要層次,前者勾勒出解空間的控制邊界,后者勾勒出領(lǐng)域模型的知識(shí)邊界,組成了一個(gè)穩(wěn)定而又具有演進(jìn)能力的領(lǐng)域驅(qū)動(dòng)架構(gòu)。

系統(tǒng)上下文

系統(tǒng)上下文:以目標(biāo)系統(tǒng)為核心,勾勒出用戶、目標(biāo)系統(tǒng)和伴生系統(tǒng)之間的關(guān)系。

系統(tǒng)上下文的確定

價(jià)值需求的中利益相關(guān)者可以充當(dāng)系統(tǒng)上下文的用戶。

系統(tǒng)的范圍可以幫助界定系統(tǒng)解空間的邊界,劃分目標(biāo)系統(tǒng)和伴生系統(tǒng)。

結(jié)合系統(tǒng)愿景進(jìn)行判斷,與愿景不相匹配的功能和業(yè)務(wù)不考慮。

限界上下文

限界上下文是領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)中最難解析的原則,但也是最重要的原則??梢哉f,沒有限界上下文,就不能做好領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)。

 

 

 

 

 


對(duì)復(fù)雜系統(tǒng)進(jìn)行分析或者綜合時(shí)可以運(yùn)用的方法:自頂向下和自底向上。

限界上下文識(shí)別的步驟:分析和歸納

業(yè)務(wù)知識(shí)的歸類

業(yè)務(wù)知識(shí)的歸納

業(yè)務(wù)主體的邊界梳理

呈現(xiàn)限界上下文

上下文映射

領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)強(qiáng)調(diào)通過深入理解業(yè)務(wù)領(lǐng)域,將業(yè)務(wù)模型從業(yè)務(wù)專家的角度抽象出來。然后,在應(yīng)用中貫穿地使用這些模型,使開發(fā)人員和業(yè)務(wù)專家能夠更好地協(xié)同合作。

通過問題空間到解空間獲得業(yè)務(wù)維度的限界上下文,同時(shí)還要確定上下文與業(yè)務(wù)服務(wù)之間的映射關(guān)系,這對(duì)設(shè)計(jì)服務(wù)契約是限界文之間的協(xié)作關(guān)系,在領(lǐng)域分析建模時(shí)確定領(lǐng)域模型與限界上下文的關(guān)系。

 

上下文映射圖的可視化呈現(xiàn)只是一種形式,重要是限界上下文的協(xié)作模式,它們組成上下文映射模型。限界上下文之間的映射模式:客戶方/供應(yīng)方、遵奉者、合作關(guān)系、共享內(nèi)核、防腐層、開放主機(jī)服務(wù)、發(fā)布語言、分離方式、大泥球模式。

⑸  服務(wù)契約設(shè)計(jì)

服務(wù)契約:在全局分析階段輸出的業(yè)務(wù)需求稱之為業(yè)務(wù)服務(wù),業(yè)務(wù)服務(wù)滿足了角色的服務(wù)請(qǐng)求,在解空間體現(xiàn)為服務(wù)與客戶的協(xié)作關(guān)系,形成的協(xié)作接口可稱之契約。

服務(wù)契約:消息契約、服務(wù)資源契約、服務(wù)行為契約、服務(wù)事件契約。

應(yīng)用服務(wù)與領(lǐng)域服務(wù)之間:領(lǐng)域?qū)优c應(yīng)用界面之間引入應(yīng)用層,應(yīng)用層盡量簡單,不包含業(yè)務(wù)規(guī)則或者知識(shí),只為領(lǐng)域?qū)又械念I(lǐng)域?qū)ο髤f(xié)調(diào)任務(wù),分配工作,使它們互相協(xié)作;簡單理解:“應(yīng)用層只負(fù)責(zé)提問,不負(fù)責(zé)回答;領(lǐng)域?qū)佑肋h(yuǎn)只負(fù)責(zé)回答?!睉?yīng)用層定義的應(yīng)用服務(wù)是外觀模式的體現(xiàn)。

⑹  領(lǐng)域驅(qū)動(dòng)架構(gòu)

領(lǐng)域驅(qū)動(dòng)架構(gòu)是針對(duì)領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的一種架構(gòu)風(fēng)格。它以領(lǐng)域?yàn)楹诵尿?qū)動(dòng)力,以業(yè)務(wù)能力為核心關(guān)注點(diǎn),建立目標(biāo)系統(tǒng)的結(jié)構(gòu)解決方案。其核心模型為系統(tǒng)上下文與限界上下文,并以它們?yōu)檫吔?,形成各自的架?gòu)模式:系統(tǒng)分層架構(gòu)和菱形架構(gòu)模式。

領(lǐng)域驅(qū)動(dòng)架構(gòu):領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)建立的一種架構(gòu)風(fēng)格。

以領(lǐng)域?yàn)楹诵尿?qū)動(dòng)力,以業(yè)務(wù)能力為核心關(guān)注點(diǎn),建立目標(biāo)系統(tǒng)解決方案。

領(lǐng)域模型為驅(qū)動(dòng)的核心關(guān)注點(diǎn)進(jìn)行縱向切分自治單元。

核心元模型以系統(tǒng)上下文與限界上下文為邊界,形成各自架構(gòu)模式:分層架構(gòu)和菱形對(duì)稱架構(gòu)。

限界上下文是架構(gòu)映射階段的基本單元,每個(gè)限界上下文是一個(gè)自治的獨(dú)立王國(微服務(wù))。

 

4.5 領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)--領(lǐng)域建模

領(lǐng)域建模的過程是模型驅(qū)動(dòng)設(shè)計(jì)的過程,領(lǐng)域建模的分析、設(shè)計(jì)和實(shí)現(xiàn)是循序漸進(jìn)的增量和迭代的過程。

利用抽象化繁為簡,通過標(biāo)準(zhǔn)的結(jié)構(gòu)來組織和傳遞信息,形成可推演的解決方案。

解決信息超載問題的工具,對(duì)知識(shí)進(jìn)行了選擇性的簡化和有意的結(jié)構(gòu)化。

模型的重要性并不體現(xiàn)在它表現(xiàn)形式,重要是在于它傳遞的知識(shí)。

 

 

⑴  模型驅(qū)動(dòng)設(shè)計(jì)

模型驅(qū)動(dòng)設(shè)計(jì)就是把產(chǎn)品需求轉(zhuǎn)化成一個(gè)可以運(yùn)行的系統(tǒng),涉及產(chǎn)品設(shè)計(jì)、領(lǐng)域建模、架構(gòu)設(shè)計(jì)、詳細(xì)設(shè)計(jì)、代碼編寫、測(cè)試等步驟。DDD的基本過程進(jìn)一步展開來說,大體是以下三點(diǎn):

在理解產(chǎn)品需求的基礎(chǔ)上,從中提取出核心概念,然后建立起核心概念的邏輯結(jié)構(gòu),概念的邏輯結(jié)構(gòu)即領(lǐng)域模型,領(lǐng)域模型以一種抽象的視角來理解復(fù)雜業(yè)務(wù),但也僅僅是理解業(yè)務(wù)。

有了領(lǐng)域模型,也有了系統(tǒng)架構(gòu),到了這一步通常還不能直接開始編碼,一般會(huì)對(duì)系統(tǒng)架構(gòu)中的各個(gè)模塊進(jìn)行詳細(xì),比如模塊的流程是什么,數(shù)據(jù)結(jié)構(gòu)怎么設(shè)計(jì)、DB數(shù)據(jù)表怎么設(shè)計(jì)等。

要用代碼搭建起一套可運(yùn)行的系統(tǒng)。從領(lǐng)域模型到代碼,通常不能一步跨越,中間需要通過系統(tǒng)架構(gòu)來銜接。把領(lǐng)域模型映射為系統(tǒng)架構(gòu),這是至關(guān)重要的一步。簡單來說,一般都采用分層微服務(wù)架構(gòu),架構(gòu)映射即是把領(lǐng)域模型中的概念分解到架構(gòu)中的各層。

領(lǐng)域分析建模

對(duì)于一個(gè)復(fù)雜的軟件系統(tǒng),必須對(duì)問題系統(tǒng)展開分析,有的放矢這對(duì)軟件系統(tǒng)需求尋求設(shè)計(jì)上的解決方案。在戰(zhàn)略設(shè)計(jì)階段采用“全局分析”和“架構(gòu)映射”,在戰(zhàn)術(shù)層面,領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)要求分析方法就是要以“領(lǐng)域”為中心展開分析建模,獲得領(lǐng)域分析模型。這個(gè)過程是以領(lǐng)域?qū)<抑鲗?dǎo),與開發(fā)團(tuán)隊(duì)一起共同進(jìn)行分析建模,以戰(zhàn)略分析為基礎(chǔ)(系統(tǒng)上下文和限界上下文),再進(jìn)行戰(zhàn)術(shù)設(shè)計(jì)(領(lǐng)域分析模型)。

領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的關(guān)鍵是采取合理的方式對(duì)領(lǐng)域進(jìn)行建模,也就是將物理世界的業(yè)務(wù)映射到軟件系統(tǒng)產(chǎn)品中,最終使得軟件產(chǎn)品能夠承載實(shí)際的業(yè)務(wù)。可以從如下幾個(gè)方面來進(jìn)行領(lǐng)域建模:

 

⑶  領(lǐng)域設(shè)計(jì)建模

領(lǐng)域設(shè)計(jì)建模:它的核心工作就是設(shè)計(jì)聚合和設(shè)計(jì)服務(wù),最關(guān)鍵的設(shè)計(jì)要素(實(shí)體、值對(duì)象、領(lǐng)域服務(wù)、領(lǐng)域事件、聚合、工廠、資源庫)。領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)從不忽略技術(shù)因素對(duì)模型的影響,它引入戰(zhàn)術(shù)層面設(shè)計(jì)元模型,將技術(shù)與領(lǐng)域模型結(jié)合,避免空談對(duì)象模型的理想。

領(lǐng)域設(shè)計(jì)模型:只能由實(shí)體、值對(duì)象、領(lǐng)域服務(wù)和領(lǐng)域事件表示模型,避免將領(lǐng)域邏輯泄漏到領(lǐng)域?qū)油獾钠渌胤健?/p>

聚合用于封裝實(shí)體和值對(duì)象,并維持自己邊界內(nèi)所有對(duì)象的完整性。

要訪問聚合,只能通過聚合根的資源庫,這就隱式地劃定了邊界和入口,有效控制了聚合內(nèi)所有類型的領(lǐng)域?qū)ο螅?/p>

若聚合創(chuàng)建的邏輯較為復(fù)雜或存在可變性,可引入工廠來創(chuàng)建聚合內(nèi)的領(lǐng)域?qū)ο蟆?/p>

若牽涉到實(shí)體的狀態(tài)變更,領(lǐng)域源模型建議通過領(lǐng)域事件來驅(qū)動(dòng)。

設(shè)計(jì)框架總體結(jié)構(gòu)采用領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的分層架構(gòu),但不同的是該結(jié)構(gòu)嚴(yán)格遵循分層架構(gòu)的基本原則,不允許用戶界面層越過應(yīng)用層直接接觸領(lǐng)域?qū)?。由于領(lǐng)域?qū)邮穷I(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的核心,而其它層經(jīng)常在各類分層架構(gòu)中出現(xiàn),已經(jīng)有了比較成熟的設(shè)計(jì)方法。因此,分層架構(gòu)框架主要討論領(lǐng)域?qū)右约芭c領(lǐng)域?qū)用芮?相關(guān)的數(shù)據(jù)訪問模塊的設(shè)計(jì)。領(lǐng)域?qū)邮歉鶕?jù)不同實(shí)際領(lǐng)域,利用統(tǒng)一編碼規(guī)則實(shí)現(xiàn)的動(dòng)態(tài)結(jié)構(gòu),又可分為聚合模塊、工廠模塊和倉儲(chǔ)模塊三部分。數(shù)據(jù)訪問模塊屬于基礎(chǔ)結(jié)構(gòu)層,是封裝好的靜態(tài)模塊。

 

 

 

 

 


領(lǐng)域?qū)崿F(xiàn)建模

代碼架構(gòu)分層是經(jīng)典領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的四層:用戶接口層,應(yīng)用層,領(lǐng)域?qū)雍突A(chǔ)設(shè)施層。

 

用戶接口層:面向前端用戶提供服務(wù)和數(shù)據(jù)適配。這一層聚集了接口和數(shù)據(jù)適配相關(guān)的功能。

應(yīng)用層:實(shí)現(xiàn)服務(wù)組合與編排,主要適應(yīng)業(yè)務(wù)流程快速變化的需求。這一層聚集了應(yīng)用服務(wù)和時(shí)間訂閱相關(guān)的功能。

領(lǐng)域?qū)樱簩?shí)現(xiàn)領(lǐng)域模型的聚合、聚合根、實(shí)體、值對(duì)象、領(lǐng)域服務(wù)和領(lǐng)域事件對(duì)象的協(xié)同和組合形成領(lǐng)域模型的核心業(yè)務(wù)能力。

基礎(chǔ)設(shè)施層:它貫穿所有層,為各層提供基礎(chǔ)資源服務(wù)。這一層聚集了各種底層資源相關(guān)的服務(wù)和能力。

4.6 領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)--案例分析

展示和講解5個(gè)項(xiàng)目案例

 

授課講師介紹:

曾老師:高級(jí)工程師,畢業(yè)于武漢大學(xué)計(jì)算機(jī)系,從事計(jì)算機(jī)軟件研發(fā)管理工作30余年。曾在項(xiàng)目經(jīng)理、產(chǎn)品經(jīng)理、研發(fā)部門經(jīng)理及產(chǎn)品總監(jiān)崗位有過多年的工作經(jīng)驗(yàn)。曾是中國水力發(fā)電工程學(xué)會(huì)電力系統(tǒng)自動(dòng)化專業(yè)委員會(huì)第三屆和第四屆委員,中國能源研究會(huì)高級(jí)會(huì)員?,F(xiàn)在一直從事電力系統(tǒng)計(jì)算機(jī)應(yīng)用軟件系統(tǒng)的研發(fā)與管理工作,主持和參與過省部級(jí)科技項(xiàng)目4項(xiàng),地市級(jí)科技項(xiàng)目3項(xiàng),以及多項(xiàng)公司級(jí)的重點(diǎn)項(xiàng)目和產(chǎn)品。獲得新產(chǎn)品技術(shù)鑒定國際領(lǐng)先科技成果1項(xiàng),發(fā)表學(xué)術(shù)論文13篇,專利成果22項(xiàng)(發(fā)明13項(xiàng)、實(shí)用新型6項(xiàng)、外觀3項(xiàng)),軟件著作權(quán)5項(xiàng)。獲2005年珠海市科技進(jìn)步一等獎(jiǎng)和2021年珠海市科技進(jìn)步二等獎(jiǎng)、2014年授予珠海市軟件創(chuàng)新人才和2016年珠海市香洲區(qū)C類高端產(chǎn)業(yè)人才、主持研發(fā)的《XX-XXXX發(fā)電企業(yè)現(xiàn)場(chǎng)作業(yè)安全管控系統(tǒng)》獲2021年全國智慧風(fēng)電科技成果優(yōu)秀獎(jiǎng)等。

主講的課程:軟件研發(fā)培訓(xùn)課程四部曲

課程一:《基于AI大模型軟件研發(fā)思想與技術(shù)》

——軟件研發(fā)智能化的新紀(jì)元!

課程二:《軟件需求工程實(shí)踐及方法》

——軟件研發(fā)成功的技術(shù)保障!

課程三:《領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)與實(shí)踐》

——軟件核心復(fù)雜性解決之道!

課程四:《軟件產(chǎn)品平臺(tái)及CBB技術(shù)》

——軟件研發(fā)效率質(zhì)量的利器!

主要工作經(jīng)歷:

1990年7月~1998年11月,云南以禮河發(fā)電廠計(jì)算機(jī)室,曾擔(dān)任計(jì)算室負(fù)責(zé)人;

1998年12月~1999年11月,珠海泰坦能源電子技術(shù)有限公司,曾擔(dān)任項(xiàng)目經(jīng)理;

1999年12月~2004年4月,珠海遠(yuǎn)方軟件有限公司,曾擔(dān)任項(xiàng)目經(jīng)理和研發(fā)部經(jīng)理;

2004年5月~現(xiàn)在,在XXX公司,曾擔(dān)任項(xiàng)目經(jīng)理、產(chǎn)品經(jīng)理和產(chǎn)品總監(jiān),現(xiàn)為產(chǎn)品顧問。

重點(diǎn)項(xiàng)目經(jīng)歷/經(jīng)驗(yàn)

廣東省科技項(xiàng)目《XX-XXXX配電網(wǎng)防誤綜合操作系統(tǒng)》,粵科計(jì)字[2008]144號(hào)

廣東省教育部產(chǎn)學(xué)研科技項(xiàng)目《配電網(wǎng)智能防誤綜合操作系統(tǒng)》,粵財(cái)教[2010]303號(hào)

廣東省科技項(xiàng)目《車輛段檢修作業(yè)安全聯(lián)鎖管理系統(tǒng)》,粵科規(guī)財(cái)[2016]48號(hào)

廣東省科技項(xiàng)目《基于物聯(lián)網(wǎng)技術(shù)的電力操作系統(tǒng)和設(shè)備巡檢系統(tǒng)》,粵科規(guī)劃字[2012]98號(hào)

珠海市產(chǎn)學(xué)研項(xiàng)目《基于數(shù)字孿生技術(shù)的電廠作業(yè)安全智能管控系統(tǒng)研發(fā)及產(chǎn)業(yè)化》

珠海市戰(zhàn)略性新興產(chǎn)業(yè)重大項(xiàng)目《變電站輔助監(jiān)控系統(tǒng)》,珠科工信[2014]160號(hào)

珠海市戰(zhàn)略性新興產(chǎn)業(yè)重大項(xiàng)目《基于IP通信網(wǎng)絡(luò)的智能電網(wǎng)協(xié)調(diào)控制系統(tǒng)研發(fā)及產(chǎn)業(yè)化》

公司級(jí)項(xiàng)目《XX-XXXX發(fā)電企業(yè)現(xiàn)場(chǎng)作業(yè)安全管控系統(tǒng)》鑒定為“國際領(lǐng)先水平”,獲珠??萍歼M(jìn)步二等獎(jiǎng)

公司級(jí)項(xiàng)目《XX-XXXX操作票專家系統(tǒng)》,獲珠海市科學(xué)技術(shù)進(jìn)步一等獎(jiǎng)

公司級(jí)項(xiàng)目《XX-XXXX工作票專家系統(tǒng)》

公司級(jí)項(xiàng)目《XX-XXXX設(shè)備巡檢系統(tǒng)》

 

 

 

我要報(bào)名沒有找到合適的課程,請(qǐng)?jiān)谶@里提交您的培訓(xùn)需求   發(fā)布需求

上課時(shí)間
參加人數(shù)
費(fèi)用
聯(lián)系人
單位名稱
部門職務(wù)
機(jī)
通信地址
驗(yàn)
看不清,請(qǐng)換一張看不清,請(qǐng)換一張

推薦課程

課程背景?AIAG(美國汽車工業(yè)行動(dòng)集團(tuán))于2024年3月1日正式將《先期產(chǎn)品質(zhì)量策劃 (APQP)》更新為第三版,并且將《控制計(jì)劃 (CP)》作為一本獨(dú)立的質(zhì)量參考工具發(fā)布了第一版。?先期產(chǎn)品質(zhì)量策劃 (APQP)是一種結(jié)構(gòu)化方法,用于定義和建立確保產(chǎn)品滿足顧客并滿足所有性能和質(zhì)量要求所需的步驟。實(shí)施的好處包括:-引導(dǎo)資源來滿足顧客。-促進(jìn)及早識(shí)別所需的變...

 講師:楊老師詳情


《職場(chǎng)高效溝通心理學(xué)》講師/Lecturer:蔣老師費(fèi)用/Price:¥4580元/人課程排期/Scheduling廣州:2025年06月12日-13日上海:2025年07月16日-17日北京:2025年08月14日-15日深圳:2025年09月11日-12日廣州:2025年10月30日-31日上海:2025年11月20日-21日北京:2025年12月25日...

 講師:蔣老師詳情


《大數(shù)據(jù)時(shí)代的企業(yè)運(yùn)營管理與數(shù)據(jù)分析模型》課程費(fèi)用:4980元/人 (含培訓(xùn)費(fèi)、教材費(fèi)、場(chǎng)地費(fèi)、午餐、茶歇費(fèi)及稅金)參訓(xùn)對(duì)象:總經(jīng)理、運(yùn)營總監(jiān)、運(yùn)營官、財(cái)務(wù)總監(jiān)等企業(yè)高層管理人員。課程地點(diǎn):上海課程時(shí)間:2天第一期第二期3月20-21日8月14-15日課程背景:n在大數(shù)據(jù)時(shí)代技術(shù)改進(jìn)使得管理這門看似復(fù)雜的學(xué)科變得簡單和實(shí)用,更為重要的意義在于使管理者的“知其...

 講師:楊云詳情


最新《干部人事檔案工作條例》解析與人事檔案管理實(shí)務(wù)操作中的風(fēng)險(xiǎn)規(guī)避及信息化建設(shè)時(shí)間地點(diǎn):2025年03月13-15日北京03月27-29日上海04月17-19日武漢04月24-26日廣州05月15-17日南京05月22-24日成都6月12-14日重慶06月19-21日西安06月26-28日上海07月17-19日青島07月24-26日貴陽08月14-16日長沙...

 講師:孫老師王老師張老師劉老師陳老師詳情


數(shù)字化采購價(jià)格分析與成本降低高級(jí)研修班培訓(xùn)費(fèi)用: 4680元/人(含培訓(xùn)費(fèi)、教材費(fèi)、午餐費(fèi)、茶點(diǎn)費(fèi)等)培訓(xùn)對(duì)象:采購總監(jiān)、供應(yīng)鏈總監(jiān)、采購經(jīng)理、采購專員、財(cái)務(wù)審計(jì)經(jīng)理、預(yù)算經(jīng)理、“供應(yīng)商管理”經(jīng)理、主管及專員,成本分析工程師及相關(guān)從業(yè)工作人員課程受益:通過2天的學(xué)習(xí),使學(xué)員能夠:成本價(jià)格模版的設(shè)置與推廣使用價(jià)格分析的專業(yè)能力的提升數(shù)據(jù)敏感度的培養(yǎng)專業(yè)級(jí)成本分...

 講師:馬曉峰詳情


手工焊接培訓(xùn)   2025-08-14

課程背景?手工焊接專項(xiàng)培訓(xùn)是展碩咨詢公司專門為電子制造行業(yè)量身定制的實(shí)操類培訓(xùn)課程。專注于手工焊接的原理、習(xí)慣、材料工具和具體細(xì)節(jié)步驟的研究,把復(fù)雜的手工焊接技能簡單化、專業(yè)化、標(biāo)準(zhǔn)化,有效降低了企業(yè)因手工焊接引起的不良率及報(bào)廢率。課程收益?理論和實(shí)際結(jié)合:手工焊接理論講解和實(shí)操焊接練習(xí)相結(jié)合,60時(shí)間動(dòng)手操作,40時(shí)間講解考評(píng);?案例分析:通過樣品檢驗(yàn)有效...

 講師:張老師詳情


《職場(chǎng)高效溝通心理學(xué)》講師/Lecturer:許老師費(fèi)用/Price:¥4580元/人課程排期/Scheduling上海:2024年05月30日-31日課程概述/Overview課程背景:良好的職場(chǎng)溝通不但能夠有效表達(dá)工作意愿,提升溝通的效率,還有助于建立良好的人際關(guān)系網(wǎng)絡(luò),發(fā)展人際關(guān)系中的支持系統(tǒng)。相反,失敗的職場(chǎng)溝通會(huì)導(dǎo)致更多的誤解、沖突、工作低效率、決...

 講師:許老師詳情


全渠道供應(yīng)鏈管理(含電商渠道)Omni-Channel Supply Chain Management(incl. E-Commerce)課程安排2025年08月14-15日 上海課程費(fèi)用¥5,600/人(含授課費(fèi)、證書費(fèi)、資料費(fèi)、午餐費(fèi)、茶點(diǎn)費(fèi)、會(huì)務(wù)費(fèi)、稅費(fèi)) 課程對(duì)象公司管理層、供應(yīng)鏈計(jì)劃、物流、采購、制造、IT、項(xiàng)目管理部、電商部門、零售業(yè)務(wù)部門等;適...

詳情


WOW!客戶服務(wù)與投訴應(yīng)對(duì)技巧 WOW Management and Complaint Handling Skills of Customer Service講師/Lecturer:姜老師費(fèi)用/Price:¥4580元/人課程排期/Scheduling上海:2025年06月04日-05日北京:2025年06月26日-27日廣州:2025年07月10日-11...

 講師:姜老師詳情


《職場(chǎng)高效溝通心理學(xué)》講師/Lecturer:紀(jì)老師 費(fèi)用/Price:¥4580元/人課程排期/Scheduling課程概述/Overview課程背景:在職場(chǎng)中,溝通不僅是一門藝術(shù),更是一項(xiàng)生存必備的技能。工作匯報(bào)、同事相處、解決爭(zhēng)議、帶領(lǐng)團(tuán)隊(duì)、增進(jìn)關(guān)系等等,職場(chǎng)工作的各個(gè)方面都離不開良好的溝通能力。許多知名企業(yè)都將溝通能力列為員工最重要的三項(xiàng)技能之一,其...

 講師:紀(jì)老師 詳情


COPYRIGT @ 2001-2018 HTTP://fanshiren.cn INC. ALL RIGHTS RESERVED. 管理資源網(wǎng) 版權(quán)所有