— 新聞中心 —
NEWS CENTRES郵箱:www.jungshuodz@163.com
手機:18268652722
電話:18268652722
地址:寧波市北侖區(qū)大碶廟前山路45號
人氣:
它強調(diào)將業(yè)務(wù)領(lǐng)域的知識和概念直接融入到軟件設(shè)計和開發(fā)中,以實現(xiàn)更好的業(yè)務(wù)價值和可維護性。在DDD 里,這些實體類通常采用充血模型,與這個實體相關(guān)的所有業(yè)務(wù)邏輯都在實體類的方法中實現(xiàn),跨多個實體的領(lǐng)域邏輯則在領(lǐng)域服務(wù)中實現(xiàn)。在設(shè)計的時候應(yīng)該用實體對象還是值對象,我覺得本著一個是否具有業(yè)務(wù)行為的原則就夠了,有業(yè)務(wù)行為的就用實體對象,沒有業(yè)務(wù)行為的就設(shè)計成值對象。
年的領(lǐng)域驅(qū)動設(shè)計峰會是一次對國內(nèi)DDD實踐的檢閱和展望,和業(yè)界同行一起探索DDD,同時我們也希望在軟件行業(yè)可以更大范圍和更深層次的展開實踐的道路與前景。本課程通過大量真實的案例,講解許多公司在開展領(lǐng)域驅(qū)動設(shè)計的過程中面臨的難題、解決的思路。領(lǐng)域按照一定的業(yè)務(wù)規(guī)則細分,進而劃分出多個子域,每個子域?qū)?yīng)一個更小的業(yè)務(wù)范圍。
值對象在數(shù)據(jù)庫持久化方面簡化了設(shè)計,它的數(shù)據(jù)庫設(shè)計大多采用非數(shù)據(jù)庫范式,值對象的屬性值和實體對象的屬性值保存在同一個數(shù)據(jù)庫實體表中。在研究和解決業(yè)務(wù)問題時,DDD 會按照一定的規(guī)則將業(yè)務(wù)領(lǐng)域進行細分,當領(lǐng)域細分到一定的程度后,DDD 會將問題范圍限定在特定的邊界內(nèi),在這個邊界內(nèi)建立領(lǐng)域模型,進而用代碼實現(xiàn)該領(lǐng)域模型,解決相應(yīng)的業(yè)務(wù)問題。
DDD從戰(zhàn)略設(shè)計到戰(zhàn)術(shù)設(shè)計概覽第2章領(lǐng)域分析模型核心域,支撐子域,通用子域微服務(wù)和DDD是什么關(guān)系?戰(zhàn)略設(shè)計也叫戰(zhàn)略建模,從業(yè)務(wù)視角出發(fā),對業(yè)務(wù)需求進行拆解分析,劃分子域,梳理限界上下文,通過領(lǐng)域語言從戰(zhàn)略層面進行領(lǐng)域劃分以及構(gòu)建領(lǐng)域模型。如果客戶程序?qū)儆趹?yīng)用層,領(lǐng)域?qū)拥囊徊糠謱⒈灰频搅送膺叄瑪_亂整個設(shè)計。
洋蔥架構(gòu)針對六邊形架構(gòu)更進?步把內(nèi)層的業(yè)務(wù)邏輯分為了DDD概念的應(yīng)?服務(wù)層、領(lǐng)域服務(wù)層和領(lǐng)域模型層。當我們分析領(lǐng)域并試圖定義構(gòu)成模型的主要對象時,我們發(fā)現(xiàn)有些方面的領(lǐng)域很難映射成對象。這種設(shè)計方式雖然降低了數(shù)據(jù)庫設(shè)計的復(fù)雜度,但卻無法滿足基于值對象的快速查詢,會導(dǎo)致搜索值對象屬性值變得異常困難。
DDD 領(lǐng)域驅(qū)動設(shè)計微服務(wù)簡化版,簡潔、高效、值得重點研究,主要問題是持久化采用的JPA,擔(dān)心技術(shù)人員不熟悉,理論篇。六邊形架構(gòu)將系統(tǒng)分為內(nèi)部(內(nèi)部六邊形)和外部,內(nèi)部代表了應(yīng)用的業(yè)務(wù)邏輯,外部代表應(yīng)用的驅(qū)動邏輯、基礎(chǔ)設(shè)施或其他應(yīng)用。領(lǐng)域服務(wù)(Domain Service):領(lǐng)域服務(wù)是一種用于處理領(lǐng)域邏輯的服務(wù)。
DDD 核心思想是通過領(lǐng)域驅(qū)動設(shè)計方法定義領(lǐng)域模型,從而確定業(yè)務(wù)和應(yīng)用邊界,保證業(yè)務(wù)模型與代碼模型的一致性。
相關(guān)推薦