企業(yè)發(fā)布
首頁(yè) > 企業(yè)發(fā)布 > 詳細(xì)內(nèi)容
業(yè)務(wù)變化不息,架構(gòu)演進(jìn)不止 第四屆領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)峰會(huì)線上開(kāi)啟
2020/12/19 12:00:00 來(lái)源:中國(guó)企業(yè)新聞網(wǎng)
導(dǎo)言:12月19日,第四屆領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)峰會(huì)(DDD Conference)再度開(kāi)啟。不同于往屆的線下舉行形式,本屆峰會(huì)采取線上的形式,致力于打造一場(chǎng)架構(gòu)設(shè)計(jì)和技術(shù)實(shí)踐的盛宴。作為軟件架構(gòu)設(shè)計(jì)新的潮流,領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(Domain Driven Design,簡(jiǎn)稱DDD)強(qiáng)調(diào)業(yè)務(wù)和技術(shù)的統(tǒng)一性,為復(fù)雜領(lǐng)域軟件工程的設(shè)計(jì)決策提供實(shí)踐框架,幫助企業(yè)不斷拓展數(shù)字化業(yè)務(wù)。
2020年,一場(chǎng)突如其來(lái)的全球公共衛(wèi)生事件對(duì)于人們的生活與工作產(chǎn)生了巨大的影響,各行各業(yè)積極應(yīng)對(duì)挑戰(zhàn)。業(yè)務(wù)的劇變對(duì)架構(gòu)平臺(tái)帶來(lái)了巨大的沖擊,如何客觀地評(píng)估分析架構(gòu)現(xiàn)狀、該從哪些維度設(shè)定架構(gòu)演進(jìn)的目標(biāo),又如何引導(dǎo)架構(gòu)增量地向目標(biāo)演進(jìn),成為當(dāng)下企業(yè)持續(xù)探索的命題之一。
領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)峰會(huì)(DDD Conference)是由國(guó)內(nèi)領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(DDD)思想和實(shí)踐的領(lǐng)軍者——ThoughtWorks的架構(gòu)咨詢師們組織發(fā)起,希望為國(guó)內(nèi)的領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(DDD) 實(shí)踐者們提供一個(gè)互相交流、分享自己團(tuán)隊(duì)的成功經(jīng)驗(yàn)的平臺(tái),使得領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(DDD)的架構(gòu)思想能夠在國(guó)內(nèi)被更多人所認(rèn)知,從而形成更大的規(guī)模效應(yīng)。
六大主題分享全景呈現(xiàn)DDD新常態(tài)
本屆峰會(huì)邀請(qǐng)了ThoughtWorks全球技術(shù)總監(jiān)及軟件架構(gòu)師Neal Ford、Unisys首席應(yīng)用架構(gòu)師與全球DDD社區(qū)領(lǐng)袖Indu Alagarsamy等來(lái)自海外的領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(DDD)的領(lǐng)軍人物分享在架構(gòu)設(shè)計(jì)領(lǐng)域出現(xiàn)的新的嘗試和探索。
同時(shí),民航信息技術(shù)總監(jiān)張逸、IBM資深應(yīng)用架構(gòu)師于靜、《中臺(tái)架構(gòu)與實(shí)現(xiàn):基于DDD和微服務(wù)》作者歐創(chuàng)新等國(guó)內(nèi)持續(xù)實(shí)踐領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(DDD)的代表和思想領(lǐng)袖也分享了他們?cè)诟鱾(gè)不同場(chǎng)景下對(duì)于使用領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的感悟和總結(jié),展現(xiàn)了在后疫情時(shí)代領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)將會(huì)出現(xiàn)的新變化。
不論是演講嘉賓還是話題設(shè)置,本次峰會(huì)既呈現(xiàn)了DDD的現(xiàn)狀與未來(lái)趨勢(shì),又展示了DDD的最佳行業(yè)實(shí)踐,全方位呈現(xiàn)了DDD的發(fā)展情況。
構(gòu)建演進(jìn)式架構(gòu)
在過(guò)去十年中,DDD的限界上下文概念影響了軟件架構(gòu),并啟發(fā)Neal Ford產(chǎn)生了《演進(jìn)式架構(gòu)》書(shū)中的一些思想。作為T(mén)houghtWorks全球技術(shù)總監(jiān)及軟件架構(gòu)師,Neal Ford是國(guó)際公認(rèn)的軟件開(kāi)發(fā)和交付方面的專家,尤其是在敏捷工程技術(shù)和軟件體系結(jié)構(gòu)的交集方面,以及DDD如何啟發(fā)他產(chǎn)生了軟件架構(gòu)的量子概念。
業(yè)務(wù)實(shí)踐在變,工具和框架在演進(jìn),創(chuàng)新的工具和技術(shù)不斷涌現(xiàn),這讓軟件開(kāi)發(fā)生態(tài)體系也是瞬息萬(wàn)變。在過(guò)去的幾年里,軟件開(kāi)發(fā)核心工程實(shí)踐的漸進(jìn)發(fā)展,讓開(kāi)發(fā)者重新思考架構(gòu)是如何隨著時(shí)間的推移而變化的,以及重要的架構(gòu)特征如何能夠在架構(gòu)演進(jìn)過(guò)程中得到有效保護(hù),這促使Neal Ford與ThoughtWorks全球CTO Rebecca Parson博士一起總結(jié)提煉了演進(jìn)式架構(gòu)的核心概念。
在峰會(huì)的主題分享上,Neal Ford討論了有關(guān)可演進(jìn)架構(gòu)的兩個(gè)關(guān)鍵洞察。Neal Ford指出,演進(jìn)式架構(gòu)是在當(dāng)需求出現(xiàn)的時(shí)候通過(guò)適應(yīng)函數(shù)來(lái)把握架構(gòu)演進(jìn)的方向,演進(jìn)式架構(gòu)隨著系統(tǒng)和業(yè)務(wù)的增加而變化,而且能夠保證用戶得到想要的部分,追求性能上的優(yōu)化,追求擴(kuò)展性的不斷提升。
演進(jìn)式架構(gòu)支持跨多個(gè)維度的引導(dǎo)性增量更改。演進(jìn)架構(gòu)從進(jìn)化計(jì)算世界借鑒了適應(yīng)度函數(shù)的概念,以定義所謂的架構(gòu)適應(yīng)性功能。這是對(duì)某些架構(gòu)特性或架構(gòu)特性組合提供客觀完整性評(píng)估的一種機(jī)制,描述了一系列可用于驗(yàn)證體系結(jié)構(gòu)適用性的工具。
Neal Ford表示,原子適應(yīng)度功能是僅關(guān)注單個(gè)特征和體系結(jié)構(gòu)的功能,而整體適應(yīng)性功能則關(guān)注特征的組合,很多時(shí)候體系結(jié)構(gòu)特征相互糾纏。一旦定義了這些架構(gòu)適應(yīng)性功能,企業(yè)需要持續(xù)集成、部署管道以及諸如此類的敏捷調(diào)整實(shí)踐的領(lǐng)域。
演進(jìn)式架構(gòu)最初目的是研究適應(yīng)度函數(shù)的可演進(jìn)性,在此過(guò)程中,我們希望能夠衡量特定架構(gòu)風(fēng)格的演進(jìn)程度,雖然產(chǎn)生了許多代碼級(jí)量度,但是這還不夠。受到DDD的啟發(fā),Neal Ford提出了軟件架構(gòu)的量子概念。
架構(gòu)量子是一種以軟件架構(gòu)表示的領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)中的有限上下文的想法。架構(gòu)量子具有高功能凝聚力和同步通信的獨(dú)立可部署組件。架構(gòu)量子關(guān)注事物如何耦合在一起,不僅分析了架構(gòu),而且還分析了操作級(jí)別,并包含了數(shù)據(jù)庫(kù)和用戶界面等內(nèi)容。
“架構(gòu)量子對(duì)有限上下文的定義會(huì)有所不同,因?yàn)槲覀冋噲D衡量事物在生態(tài)系統(tǒng)中的耦合程度。我們確實(shí)想要一個(gè)有界上下文的概念,但要用架構(gòu)術(shù)語(yǔ)來(lái)表達(dá)。我們希望它作為一個(gè)有用的架構(gòu)分析工具!盢eal Ford說(shuō)。
領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)和消息傳遞的融合
DDD不僅可以幫助企業(yè)敏捷地編寫(xiě)高質(zhì)量的代碼,還能使所編寫(xiě)的軟件能靈活應(yīng)對(duì)業(yè)務(wù)變化。當(dāng)使用消息傳遞技術(shù)在清晰整潔和定義良好的限界上下文之間進(jìn)行通信時(shí),就可以消除時(shí)序上的耦合,結(jié)合DDD就能構(gòu)建可以自治的微服務(wù)。
Unisys首席應(yīng)用架構(gòu)師、全球DDD社區(qū)領(lǐng)袖Indu Alagarsamy在分享中認(rèn)為,DDD與作為軟件技術(shù)的消息傳遞進(jìn)行融合,也就是實(shí)現(xiàn)領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)與事件驅(qū)動(dòng)架構(gòu)相結(jié)合,構(gòu)建可以隨著業(yè)務(wù)變化而擴(kuò)展的可靠系統(tǒng)。
Indu Alagarsamy還以電商場(chǎng)景進(jìn)行了詳細(xì)說(shuō)明,銷(xiāo)售、庫(kù)存、運(yùn)輸?shù)炔煌块T(mén)的員工使用的領(lǐng)域語(yǔ)言不同,領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)引入了限界上下文的概念。我們可以根據(jù)團(tuán)隊(duì)或部門(mén)拆分模型,進(jìn)行上下文的劃分和設(shè)計(jì)。這時(shí)上下文之間需要能夠以一種自主且可靠的方式進(jìn)行通信,這是事件驅(qū)動(dòng)架構(gòu)很好地與領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)結(jié)合的地方。
命令和事件都是消息,但是通過(guò)明確區(qū)分什么是命令、什么是事件,可以幫助我們更好地設(shè)計(jì)軟件。然而如何設(shè)計(jì)一個(gè)具有事件、消息和命令的系統(tǒng)呢?這就需要引入事件風(fēng)暴。事件風(fēng)暴是一種了解業(yè)務(wù)流程的協(xié)作可視化方式,在討論流程中的業(yè)務(wù)行為時(shí),使用事件風(fēng)暴,程序員和架構(gòu)師能夠找出信息流。
“我們要做的是編寫(xiě)符合業(yè)務(wù)需求的正確軟件,了解重要的業(yè)務(wù)行為有助于編寫(xiě)正確的代碼,并使軟件與業(yè)務(wù)保持一致,事件和消息驅(qū)動(dòng)架構(gòu)可以幫助我們擺脫時(shí)間耦合,使軟件組件具有自主性。隨著對(duì)領(lǐng)域相關(guān)信息的了解越來(lái)越多,你可以不斷的改進(jìn)模型,使其變的更好。如果你想使模型中的上下文自治,可以使用事件在這些不同的限界上下文之間進(jìn)行通信!盜ndu Alagarsamy說(shuō)。
同時(shí),Indu Alagarsamy認(rèn)為,微服務(wù)的本質(zhì)在于服務(wù)需要自治,并可以根據(jù)數(shù)據(jù)做出決定,不需要不停地詢問(wèn)其他上下文。因此,事件作為在相同的限界上下文中進(jìn)行通信的機(jī)制,變得非常重要。
領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)大揭秘
作為《解構(gòu)領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)》作者,同時(shí)也是民航信息技術(shù)總監(jiān),張逸對(duì)于DDD有著自己的獨(dú)特看法,比如數(shù)據(jù)驅(qū)動(dòng)與領(lǐng)域驅(qū)動(dòng)、領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)下的單體架構(gòu)等。
張逸在主題分享中表示,數(shù)據(jù)驅(qū)動(dòng)進(jìn)入架構(gòu)設(shè)計(jì)領(lǐng)域造成模型沒(méi)有上下文的邊界,而DDD引入了限界上下文,通過(guò)業(yè)務(wù)能力完成重用,進(jìn)而確定領(lǐng)域模型的知識(shí)語(yǔ)境,讓架構(gòu)順應(yīng)業(yè)務(wù)的變化方向。
DDD的特點(diǎn)與價(jià)值在于它定義的模式,限界上下文與聚合是DDD的核心模式。限界上下文是架構(gòu)層次的自治單元,是業(yè)務(wù)能力的重用而非模型的重用。而微服務(wù)的協(xié)作就是限界上下文的協(xié)作,領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)成為顯學(xué),進(jìn)入黃金時(shí)代。
單體架構(gòu)(Monolithic Architecture)是一種將所有功能打包在一個(gè)容器中運(yùn)行的設(shè)計(jì)風(fēng)格,一個(gè)實(shí)例中集成了一個(gè)系統(tǒng)的所有功能。從中大型項(xiàng)目的業(yè)務(wù)形態(tài)、復(fù)雜度及響應(yīng)速度等維度看單體架構(gòu)時(shí)可以發(fā)現(xiàn)它存在擴(kuò)展性差、無(wú)法實(shí)現(xiàn)復(fù)雜業(yè)務(wù)、技術(shù)升級(jí)困難、開(kāi)發(fā)效率低等問(wèn)題。
張逸表示,常見(jiàn)的區(qū)分單體架構(gòu)和微服務(wù)架構(gòu)的做法并不正確,雖然沒(méi)有限界上下文的單體架構(gòu)可能導(dǎo)致“大泥球”,但是單體架構(gòu)也要通過(guò)業(yè)務(wù)能力進(jìn)行縱向切分。如果單體架構(gòu)通過(guò)限界上下文進(jìn)行邊界控制,其實(shí)可以降低微服務(wù)架構(gòu)風(fēng)格的演化成本,也能規(guī)避過(guò)度微服務(wù)化帶來(lái)的技術(shù)風(fēng)險(xiǎn)。
另外,張逸認(rèn)為,領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)存在四大“天生不足”,比如領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)缺乏一個(gè)規(guī)范的過(guò)程指導(dǎo),使得其缺乏可操作性;領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)沒(méi)有匹配的需求管理體系等,為此,我們需要領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)統(tǒng)一過(guò)程,確保DDD的落地實(shí)施。
領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)在大型遺留系統(tǒng)改造中的實(shí)踐
自領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)和微服務(wù)概念提出至今,越來(lái)越多的互聯(lián)網(wǎng)巨頭以及傳統(tǒng)行業(yè)都開(kāi)始對(duì)自己的遺留系統(tǒng)進(jìn)行微服務(wù)改造,通過(guò)把系統(tǒng)拆分為更加靈活、有業(yè)務(wù)邊界上下文、松耦合的服務(wù)來(lái)應(yīng)對(duì)快速變化的市場(chǎng)。
IBM資深應(yīng)用架構(gòu)師于靜在主題演講中介紹了一個(gè)有著二十年歷史并支撐百萬(wàn)交易額的電商平臺(tái)如何通過(guò)DDD方法華麗轉(zhuǎn)身的實(shí)踐,從這個(gè)案例我們了解到遺留系統(tǒng)進(jìn)行DDD改造過(guò)程中的點(diǎn)滴經(jīng)驗(yàn)。
于靜表示,為了加速數(shù)字化轉(zhuǎn)型與業(yè)務(wù)模式創(chuàng)新實(shí)現(xiàn),遺留系統(tǒng)的改造會(huì)面臨很多難題,比如交付速度慢、應(yīng)用架構(gòu)不滿足快速迭代需求、技術(shù)受限、維護(hù)成本高、業(yè)務(wù)流程復(fù)雜等。而在改造過(guò)程中,現(xiàn)有業(yè)務(wù)不能停,同時(shí)過(guò)程難控制、結(jié)果難驗(yàn)證等問(wèn)題也非常突出。
為此,遺留系統(tǒng)改造實(shí)施需要確立目標(biāo)與制定策略、業(yè)務(wù)梳理、服務(wù)改造、集成遷移測(cè)試、反饋。在DDD指導(dǎo)下,企業(yè)需要通過(guò)事件風(fēng)暴對(duì)業(yè)務(wù)討論,審視現(xiàn)有的業(yè)務(wù)邏輯,逐步用新應(yīng)用程序和服務(wù)替換特定功能段,增量遷移舊系統(tǒng)。隨著舊系統(tǒng)功能的更換,新系統(tǒng)最終取代了所有舊系統(tǒng)功能。
于靜說(shuō),企業(yè)在遺留系統(tǒng)改造中應(yīng)該遵循“先鋒隊(duì)、樹(shù)立模范、大部隊(duì)”的階段性原則。具體來(lái)說(shuō),“先鋒隊(duì)”階段是挑選規(guī)模較小、功能簡(jiǎn)單,業(yè)務(wù)較為獨(dú)立的功能模塊進(jìn)行改造,隨著老系統(tǒng)的功能越來(lái)越多的被微服務(wù)系統(tǒng)所代替,老系統(tǒng)也最終被替代。需要注意的是,當(dāng)發(fā)生新老系統(tǒng)的功能切換時(shí),應(yīng)該逐步切換用戶流量,對(duì)用戶盡量透明,使得改造過(guò)程過(guò)渡平滑。
當(dāng)中臺(tái)遇上DDD,如何設(shè)計(jì)微服務(wù)?
當(dāng)前,中臺(tái)、微服務(wù)是業(yè)界關(guān)注的熱點(diǎn)話題。如果將兩者放到DDD的背景下,如何建立DDD、中臺(tái)和微服務(wù)的統(tǒng)一語(yǔ)言?如何將三者融合完成協(xié)同設(shè)計(jì)?《中臺(tái)架構(gòu)與實(shí)現(xiàn):基于DDD和微服務(wù)》作者、極客時(shí)間《DDD實(shí)戰(zhàn)課》專欄作者歐創(chuàng)新在主題分享中回答了這些問(wèn)題。
歐創(chuàng)新表示,從企業(yè)架構(gòu)角度來(lái)講,業(yè)務(wù)中臺(tái)屬于業(yè)務(wù)架構(gòu)的范疇,業(yè)務(wù)中臺(tái)重構(gòu)的過(guò)程本質(zhì)是基于復(fù)用目的的企業(yè)級(jí)業(yè)務(wù)架構(gòu)重構(gòu)。在業(yè)務(wù)量不大的時(shí)候,我們用傳統(tǒng)的集中式架構(gòu)就可以解決復(fù)雜問(wèn)題。而當(dāng)面對(duì)海量互聯(lián)網(wǎng)業(yè)務(wù)比如雙十一,企業(yè)原來(lái)的架構(gòu)就不足以解決業(yè)務(wù)和應(yīng)用的擴(kuò)展性問(wèn)題,因此我們需要將原來(lái)大的問(wèn)題域拆小,將單體應(yīng)用拆分為微服務(wù),進(jìn)而上云。所以,DDD和微服務(wù)都是解決復(fù)雜問(wèn)題的設(shè)計(jì)思想。
在DDD概念里,如果只從業(yè)務(wù)架構(gòu)角度分析的話,中臺(tái)本質(zhì)上是從領(lǐng)域到更細(xì)的子域劃分過(guò)程中的一個(gè)橋梁,只從業(yè)務(wù)領(lǐng)域角度分析,它可能對(duì)應(yīng)DDD領(lǐng)域中的某一個(gè)核心子域或通用子域。
對(duì)于DDD與中臺(tái)和微服務(wù)的關(guān)系,歐創(chuàng)新認(rèn)為,中臺(tái)本質(zhì)是領(lǐng)域中的某一個(gè)子域,需要抽象并標(biāo)準(zhǔn)化,按照單一職責(zé)原則建立可復(fù)用的領(lǐng)域模型。微服務(wù)是中臺(tái)最佳技術(shù)實(shí)現(xiàn)。DDD是一種可以同時(shí)指導(dǎo)中臺(tái)業(yè)務(wù)建模和微服務(wù)設(shè)計(jì)的方法論,遵循高內(nèi)聚低耦合的原則,完成從業(yè)務(wù)端領(lǐng)域建模到應(yīng)用端微服務(wù)實(shí)現(xiàn)的無(wú)縫落地。
我們看到DDD和中臺(tái)設(shè)計(jì)兩種知識(shí)體系的融合需要建立兩者通用語(yǔ)言,團(tuán)隊(duì)通用語(yǔ)言也是DDD不斷強(qiáng)調(diào)的內(nèi)容。一般對(duì)于小的項(xiàng)目我們可以直接從問(wèn)題域開(kāi)始事件風(fēng)暴,完成領(lǐng)域建模。而對(duì)于企業(yè)級(jí)中臺(tái)而言,業(yè)務(wù)領(lǐng)域非常大,我們需要做好頂層設(shè)計(jì),劃分子域,確定中臺(tái)的大致邊界,然后基于這個(gè)邊界開(kāi)展事件風(fēng)暴,劃分限界上下文,完成領(lǐng)域建模,它是一個(gè)自上而下的設(shè)計(jì)過(guò)程。
“DDD博大精深,但DDD也不是萬(wàn)能的‘銀彈’。將中臺(tái)和DDD視作一種思維方式和設(shè)計(jì)思想,結(jié)合企業(yè)實(shí)際情況靈活運(yùn)用才是王道!睔W創(chuàng)新說(shuō)。
DDD從戰(zhàn)略設(shè)計(jì)到代碼落地的三階段方法
ThoughtWorks總監(jiān)級(jí)咨詢師楊云指導(dǎo)過(guò)多個(gè)DDD實(shí)施項(xiàng)目的落地,在峰會(huì)的主題演講上楊云系統(tǒng)介紹了如何將DDD建模在大規(guī)模開(kāi)發(fā)團(tuán)隊(duì)的情況下確實(shí)的落地到代碼層面。
為什么企業(yè)覺(jué)得DDD落地難?楊云表示:“首先,因?yàn)镈DD進(jìn)入了更深層的應(yīng)用。DDD從戰(zhàn)略層面的應(yīng)用進(jìn)入到戰(zhàn)術(shù)落地層面,而不再僅僅停留在子域劃分、微服務(wù)劃分等。其次,參與建模的人,從業(yè)務(wù)專家和架構(gòu)師級(jí)別的技術(shù)專家,深入到產(chǎn)品經(jīng)理、軟件工程師等執(zhí)行具體事務(wù)的人員,面臨在百人以上開(kāi)發(fā)團(tuán)隊(duì)大項(xiàng)目上保證代碼按照模型落地的難度。最后,DDD建模的投入和交付時(shí)間點(diǎn)的矛盾、DDD建模投入的即時(shí)性和DDD模型收益的長(zhǎng)期性之間的矛盾!
在DDD落地方面,企業(yè)需要對(duì)戰(zhàn)術(shù)級(jí)別的建模提供更具體、更模式化的指引。對(duì)于大規(guī)模項(xiàng)目,設(shè)計(jì)更明確、與代碼實(shí)現(xiàn)直接相關(guān)的微觀模型。提供更好的工具降低DDD模型建設(shè)和維護(hù)成本,提高模型和代碼一致性。
基于此,楊云提出了DDD落地的三階段方法:事件風(fēng)暴階段聚焦戰(zhàn)略建模、子域劃分、微服務(wù)拆分;名詞動(dòng)詞階段,在子域或微服務(wù)內(nèi),細(xì)化實(shí)體和行為,識(shí)別重要角色和重要規(guī)則,建立子域內(nèi)核心概念的結(jié)構(gòu)化模型;類型流階段,微觀展開(kāi)具體行為,將承載業(yè)務(wù)邏輯的純函數(shù)和依賴基礎(chǔ)設(shè)施的副作用函數(shù)剝離。
楊云表示,建模是迭代的,不是線性單向的。DDD建模需要考慮團(tuán)隊(duì)工作的細(xì)節(jié)層次,采取適當(dāng)?shù)姆椒ǎ河檬录L(fēng)暴來(lái)做戰(zhàn)略建模、用名詞動(dòng)詞法做子域內(nèi)的結(jié)構(gòu)化戰(zhàn)術(shù)建模、用類型流做行為內(nèi)部的微觀詳細(xì)設(shè)計(jì)。
結(jié)語(yǔ)
DDD從2003年被提出來(lái)以后,得到了業(yè)界的高度認(rèn)可,特別是微服務(wù)架構(gòu)、中臺(tái)等逐漸盛行,DDD正在加速在企業(yè)業(yè)務(wù)實(shí)踐中的落地。而領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)峰會(huì)為DDD社區(qū)提供了一個(gè)絕佳的交流與分享平臺(tái),也將極大推動(dòng)這種進(jìn)程,更好地促進(jìn)DDD的發(fā)展。
免責(zé)聲明:
※ 以上所展示的信息來(lái)自媒體轉(zhuǎn)載或由企業(yè)自行提供,其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本網(wǎng)站證實(shí),對(duì)本文以及其中全部或者部分內(nèi)容、文字的真實(shí)性、完整性、及時(shí)性本網(wǎng)站不作任何保證或承諾,請(qǐng)讀者僅作參考,并請(qǐng)自行核實(shí)相關(guān)內(nèi)容。如果以上內(nèi)容侵犯您的版權(quán)或者非授權(quán)發(fā)布和其它問(wèn)題需要同本網(wǎng)聯(lián)系的,請(qǐng)?jiān)?0日內(nèi)進(jìn)行。
※ 有關(guān)作品版權(quán)事宜請(qǐng)聯(lián)系中國(guó)企業(yè)新聞網(wǎng):020-34333079 郵箱:cenn_gd@126.com 我們將在24小時(shí)內(nèi)審核并處理。
標(biāo)簽 :
相關(guān)網(wǎng)文
24小時(shí)熱點(diǎn)圖片
一周新聞資訊點(diǎn)擊排行
關(guān)于我們 | CENN服務(wù) | 對(duì)外合作 | 刊登廣告 | 法律聲明 | 聯(lián)系我們 | 手機(jī)版
客戶服務(wù)熱線:020-34333079、34333137 傳真:020-34333002 舉報(bào)電話:020-34333002、13925138999(春雷) 舉報(bào)郵箱:cenn_gd@126.com
版權(quán)所有:中國(guó)企業(yè)新聞網(wǎng) 運(yùn)營(yíng)商:廣州至高點(diǎn)網(wǎng)絡(luò)技術(shù)有限公司 地址:廣州市海珠區(qū)江燕路353號(hào)保利紅棉48棟1004