右军:为张逸《解构领域驱动设计》推荐序
點擊閱讀原文進(jìn)京東購買
右軍:
領(lǐng)域驅(qū)動設(shè)計方面的書現(xiàn)在不是太多,而是太少。想必不少讀者受過《領(lǐng)域驅(qū)動設(shè)計》和《實現(xiàn)領(lǐng)域驅(qū)動設(shè)計》兩本書的啟蒙。本書是我特別推薦的領(lǐng)域驅(qū)動設(shè)計方面的技術(shù)書,為何特別推薦,且聽下文。
大約在2007年,我第一次讀《領(lǐng)域驅(qū)動設(shè)計》一書時,如讀天書,主要記住了類似實體、值對象、工廠、倉儲等概念。近年來,隨著微服務(wù)的流行,國內(nèi)對領(lǐng)域驅(qū)動設(shè)計的研究和實踐愈發(fā)多了起來。
我對領(lǐng)域驅(qū)動設(shè)計的態(tài)度是:相對于戰(zhàn)術(shù)設(shè)計,應(yīng)該更看重戰(zhàn)略設(shè)計。數(shù)年前,我醉心于研究領(lǐng)域模型。領(lǐng)域是業(yè)務(wù)變化中接近不變性的部分,業(yè)務(wù)包括領(lǐng)域?qū)ο?、業(yè)務(wù)邏輯和界面交互3個層次,其中領(lǐng)域?qū)ο笫亲罘€(wěn)定的。2015年我組織領(lǐng)域建模工作坊活動時,用的就是《分析模式:可復(fù)用的對象模型》一書中的一個需求場景。2016年我寫了一篇文章,強(qiáng)調(diào)了問題域和解決方案域的區(qū)分。張逸兄在GitChat上的兩個連載專欄歷時兩年,創(chuàng)作數(shù)十萬字,內(nèi)容之豐滿,關(guān)鍵節(jié)點探討之深刻,于我之所見,浩瀚領(lǐng)域?qū)<?#xff0c;無出其右者。雖大家都各自奔忙,僅偶有線上問候或者面聊,但皆有受益。本書的成書過程尤其令人欽佩,張逸兄不是直接將專欄調(diào)整成書,而是重新組織架構(gòu),提煉出自己的方法體系,可以說是推陳出新,自成一家。
張逸兄敢言人之所未言。領(lǐng)域驅(qū)動設(shè)計有四大不足:領(lǐng)域驅(qū)動設(shè)計缺乏規(guī)范的統(tǒng)一過程,領(lǐng)域驅(qū)動設(shè)計缺乏與之匹配的需求管理體系,領(lǐng)域驅(qū)動設(shè)計缺乏規(guī)范化的、具有指導(dǎo)意義的架構(gòu)體系,領(lǐng)域驅(qū)動設(shè)計的領(lǐng)域建模方法缺乏固化的指導(dǎo)方法。他創(chuàng)造性地提出領(lǐng)域驅(qū)動設(shè)計統(tǒng)一過程,雖然此方法有無調(diào)整空間,一定是要在不斷實踐中去檢驗的,但單就他的這份膽識和專業(yè),足以讓人欽佩。
如果說非要給本書提一點兒意見的話,我覺得本書有點兒厚了。我認(rèn)為一本好書也要兼顧讀者的情況,最好能達(dá)到讓讀者快速上手的學(xué)習(xí)效果。但張逸兄堅持讓本書以集大成者的面貌出現(xiàn),洋洋灑灑數(shù)十萬字,力求讓其成為一本值得珍藏的技術(shù)書。
凡學(xué)習(xí),須循序漸進(jìn)。我建議讀者把面向?qū)ο蟮姆治?#xff08;object-oriented analysis,OOA)、面向?qū)ο蟮脑O(shè)計(object-oriented design,OOD)、統(tǒng)一建模語言(unified modeling language,UML)、模式等相關(guān)知識作為閱讀本書的前序內(nèi)容?!额I(lǐng)域驅(qū)動設(shè)計》一書也特別提到了“復(fù)雜性”,有一定的軟件從業(yè)經(jīng)驗的朋友對“復(fù)雜性”更感同身受。
每個人心中都有一個哈姆雷特,每一位讀者都可以登臨領(lǐng)域驅(qū)動設(shè)計的閣樓,從不同的角度或俯瞰、或仰望、或凝視。我之所得:于道,是對限界上下文特別有共鳴的部分,以及問題空間(域)與解空間(域);于術(shù),是作者提出的領(lǐng)域驅(qū)動設(shè)計的“三大紀(jì)律八項注意”,可作為團(tuán)隊執(zhí)行作戰(zhàn)任務(wù)的紀(jì)律規(guī)范。其中,“三大紀(jì)律”是實施領(lǐng)域驅(qū)動設(shè)計的準(zhǔn)則:
領(lǐng)域?qū)<遗c開發(fā)團(tuán)隊在一起工作;
領(lǐng)域模型必須遵循統(tǒng)一語言;
時刻堅守兩重分析邊界與四重設(shè)計邊界。
信筆至此,茲為張兄推薦。本書精彩之處甚多,留待讀者去發(fā)現(xiàn)。祝閱讀愉快!
作者:于君澤(右軍),技術(shù)專家,《深入分布式緩存:從原理到實踐》《架構(gòu)寶典》和《程序員的三門課:技術(shù)精進(jìn)、架構(gòu)修煉、管理探秘》聯(lián)合作者。
???
從架構(gòu)演進(jìn)談 DDD 興起的原因以及與微服務(wù)的關(guān)系
2021-06-30
ThoughtWorks專家:使用 DDD 指導(dǎo)微服務(wù)拆分的邏輯
2021-04-15
這 3 種 DDD 分層架構(gòu)的模式,你掌握了么?
2021-03-30
DDD專家張逸:復(fù)雜與架構(gòu)演進(jìn)的關(guān)系
2021-03-29
滕云:DDD實現(xiàn)之路
2021-03-25
領(lǐng)域驅(qū)動設(shè)計(DDD)前夜:面向?qū)ο笏枷?/p>
2021-03-22
領(lǐng)域驅(qū)動設(shè)計(DDD):領(lǐng)域和子域
2021-03-18
總結(jié)
以上是生活随笔為你收集整理的右军:为张逸《解构领域驱动设计》推荐序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NYOJ 679 贪婪的商店
- 下一篇: 蚂蚁集团技术专家山丘:性能优化的常见模式