新聞中心
牛B的人物,早已經(jīng)厭倦了中英文混雜,他們更進(jìn)一步,使用中英文縮寫(xiě),對(duì)普通人進(jìn)行降維打擊。更厲害的,造就新的名詞,并科普出去。

在中山等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專(zhuān)注、極致的服務(wù)理念,為客戶(hù)提供成都網(wǎng)站建設(shè)、網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作專(zhuān)業(yè)公司,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站建設(shè),全網(wǎng)整合營(yíng)銷(xiāo)推廣,成都外貿(mào)網(wǎng)站制作,中山網(wǎng)站建設(shè)費(fèi)用合理。
有幾項(xiàng)技術(shù),我從心底里鄙視和厭惡,但每次在技術(shù)方案中,都默默的把它們加進(jìn)去,而且給足了它們分量。因?yàn)樗鼈儗?duì)于方案的成功與否,起著重要的概念性指導(dǎo)作用。
它們就是中臺(tái)、低代碼,以及DDD。這三個(gè)不同領(lǐng)域中的技術(shù),肩負(fù)著同樣的責(zé)任,那就是往死里忽悠。這三個(gè)詞,很偉大,它們有一個(gè)共同點(diǎn),都是很容易說(shuō)服非技術(shù)但能決策的人員,然后向下鋪開(kāi),非常具有營(yíng)銷(xiāo)型,是職業(yè)經(jīng)理人和CTO的最?lèi)?ài)。也是咨詢(xún)類(lèi)公司的最?lèi)?ài)。
這些玩意兒,有的可以忽悠大公司,有的可以忽悠小公司,反正誰(shuí)也別想逃掉。
但毒瘤如果能夠?yàn)槲覀儙?lái)利益,當(dāng)然也要擁抱。不要那么死板嘛。
當(dāng)妖風(fēng)襲來(lái),比起關(guān)上窗子,我們要擁抱它,要投其所好!為什么有的人工資高,有的人升的快!有的人成為了大師!要從根本上想想原因。
一、概念能夠升華體系
你知道么?越是職位高的人,越容易喜歡虛無(wú)縹緲的東西。拿古代的皇帝來(lái)說(shuō),有很多期望與神仙相會(huì)的,就被方士騙的死去活來(lái)。即使到最后知道被騙了,也只能偷偷的把消息封鎖起來(lái)。最近看《資治通鑒》,就發(fā)現(xiàn)了很多這樣的案例。
一來(lái),是他們真的有這種需求;二來(lái),是怕這些事被曝光了丟臉,只能咬牙堅(jiān)持下去。
地球上沒(méi)有新鮮事,放到軟件行業(yè)也一樣。當(dāng)我們把一件東西給神化,賦予它某些超自然的能力,它就能在方士的路上越走越平坦。
如何神化?抓痛點(diǎn)、談愿景、搞方法論,一般就能夠銷(xiāo)售成功。
當(dāng)然,銷(xiāo)售成功只是第一步,我們還要避免失敗,避免被秋后算賬。所以,我們需要把決策者的積極性調(diào)動(dòng)起來(lái),讓他認(rèn)識(shí)到自己的不足,羞于承認(rèn)自己的弱點(diǎn),我們就算落穩(wěn)腳步了。只要決策者上了船,他就會(huì)想方設(shè)法美化它,爭(zhēng)取更多的資源,讓更多的人上船。
為什么互聯(lián)網(wǎng)黑話生命力強(qiáng)勁,就是因?yàn)樗芎鲇?,能夠升華你的思想,而不是空洞洞的代碼。
我這里舉個(gè)例子。
有一家公司,由于研發(fā)的人數(shù)有限,但是活兒很多,分散在多個(gè)系統(tǒng)之間。研發(fā)部門(mén)研究出來(lái)的結(jié)論是:要聚焦,集中力量到核心系統(tǒng)上。怎么辦?不能在PPT上干巴巴的寫(xiě)上聚焦兩個(gè)字吧,那顯得多LOW。
思來(lái)想去,突然靈機(jī)一動(dòng)。要不,我們?cè)禳c(diǎn)名詞吧。按照級(jí)別,分它個(gè)CVP系統(tǒng)、IVP系統(tǒng)、EVP系統(tǒng)。這樣,一下子逼格就上升了不少。
看不懂這些名詞?看不懂就對(duì)了,因?yàn)檫@是我造的,要的就是看不懂這種效果。
看看下面這張圖,我們甚至可以賦予它屬性,把系統(tǒng)歸類(lèi)到這三類(lèi)之中。
重要的是,業(yè)務(wù)系統(tǒng)的聚焦,搖身一變,成為了CVP的重點(diǎn)建設(shè)。哈哈,比起一句話就完事的決策,我們這下可以聊很久了。
“教你怎么說(shuō)話十分鐘,等于什么都沒(méi)說(shuō)”。這是一種非常重要的能力。
那么,我們就來(lái)看一下,這些技術(shù)到底是什么?為什么是毒瘤?為什么要擁抱它們。
二、D不D的D的,有啥區(qū)別么
所謂領(lǐng)域驅(qū)動(dòng),就是根據(jù)需求設(shè)計(jì)系統(tǒng),這句話本來(lái)就是廢話。
有Demo代碼沒(méi)?
有Demo代碼沒(méi)?
有Demo代碼沒(méi)?
有Demo代碼沒(méi)?
所有的文章下面,都充滿(mǎn)了這樣的發(fā)問(wèn)。如果說(shuō)DDD層只是戰(zhàn)略上有用,那它就不應(yīng)該進(jìn)入程序員視野,它應(yīng)該是需求分析師的玩具。DDD應(yīng)該學(xué)學(xué)TOGAF、COBIT、CGEIT之類(lèi)的培訓(xùn),把眼光放在戰(zhàn)略布局上,不要老是想著革程序員的命,搞什么戰(zhàn)術(shù)。
你要是專(zhuān)心搞搞業(yè)務(wù)培訓(xùn)證書(shū),你賺你的錢(qián)我做我的架構(gòu)設(shè)計(jì),咱們井水不犯河水。但你要把觸角伸到我的領(lǐng)域,就會(huì)招來(lái)像我這樣的噴子。
DDD正確的打開(kāi)方式,就是擁抱它的戰(zhàn)略階段,完全扔掉它的戰(zhàn)術(shù)階段。這樣做,你會(huì)活的很舒坦。原諒我使用“限界上下文”這樣的名詞來(lái)解釋一下:你只要把我的服務(wù)邊界劃分清楚了,你管我后面是怎么實(shí)現(xiàn)呢,設(shè)計(jì)模式和架構(gòu)模式,我的工具箱多的很,并不缺CQRS、事件溯源這樣的名詞。
DDD的概念最早來(lái)源于2004年,這么多年沒(méi)火,沒(méi)有標(biāo)準(zhǔn)落地,不是沒(méi)有原因的。最近幾年,有些人發(fā)現(xiàn)了技術(shù)名詞的貧瘠,重新?lián)炱鹆怂M芾^續(xù)為KPI效力。
我曾癡迷DDD,被它的美好愿景折磨的興奮無(wú)比。買(mǎi)了網(wǎng)課,買(mǎi)了書(shū)籍,到最后發(fā)現(xiàn)它在浪費(fèi)我的時(shí)間。我恨它。恕我直言,一個(gè)難度高,落地難的技術(shù)方案,根本沒(méi)有資格讓人分割精力去了解它。
不好意思,沒(méi)有路轉(zhuǎn)粉。
首先,搞DDD的,都是些卷中卷公司,它不像微服務(wù)技術(shù)一樣,能夠找到大量落地的方案。實(shí)際上,你幾乎找不到任何有價(jià)值的參考示例,更別說(shuō)這些示例之間還相互打臉。它就像是圣經(jīng)一樣,給你說(shuō)什么是對(duì)的,但怎么做,全靠你悟。
為什么你干不了DDD,你的團(tuán)隊(duì)干不了DDD?DDD給出了三個(gè)主要原因。
- 對(duì)團(tuán)隊(duì)的要求較高。畫(huà)外音,你做不好是你的團(tuán)隊(duì)不行。
- 只有復(fù)雜的業(yè)務(wù)使用DDD才能見(jiàn)效。那什么是復(fù)雜呢?并沒(méi)有定論。話外音,你覺(jué)得不好用,那是你的業(yè)務(wù)不夠復(fù)雜。
- 雖然你用不了DDD,但其中的思想,還是值得借鑒和思考的。畫(huà)外音,我是萬(wàn)金油,不會(huì)讓你白學(xué)。
沒(méi)有人會(huì)承認(rèn)自己的團(tuán)隊(duì)不行,沒(méi)有團(tuán)隊(duì)會(huì)承認(rèn)自己的業(yè)務(wù)簡(jiǎn)單,沒(méi)人能忍受自己的投入就真的肉包子打狗了。DDD通過(guò)幾個(gè)讓你不能打臉的理由,瞬間將你綁在了一起。
2020年,花了整整三個(gè)月時(shí)間,有幸拜讀了《實(shí)現(xiàn)領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)》這本書(shū),對(duì)其深厚的文字運(yùn)用水平驚嘆拜服。以后,即使一個(gè)簡(jiǎn)單的CRUD項(xiàng)目,我也知道文檔應(yīng)該怎么寫(xiě)了,這本書(shū)就是非常好的案例。
你搜一下DDD的文章,不論什么文章,都有一個(gè)特點(diǎn),那就是不能好好的說(shuō)人話。所有的應(yīng)用代碼,都是一堆無(wú)法說(shuō)服人的垃圾代碼。因?yàn)殚_(kāi)發(fā)者和正常的寫(xiě)法一比較,發(fā)現(xiàn)自己在找罪受,那為什么要用它呢?
就拿吹的很牛b的六邊形架構(gòu)來(lái)說(shuō)吧。
六邊形架構(gòu),因?yàn)殚L(zhǎng)得像蜂窩,看起來(lái)就很靠近綠色的自然界,很高大上。說(shuō)實(shí)話,我到現(xiàn)在都沒(méi)弄明白六邊形架構(gòu),八邊形架構(gòu)(沒(méi)這種東西),三角形架構(gòu)(沒(méi)這種東西)之間,到底有何區(qū)別,這群名詞狂魔為啥選擇了6這個(gè)數(shù)字。
您就直說(shuō),復(fù)雜的業(yè)務(wù)邏輯,不應(yīng)該過(guò)多的關(guān)注技術(shù)等基礎(chǔ)設(shè)施、但要預(yù)留接口就行了,非要整的這么玄乎,一條條蚯蚓一樣的線從那腐爛的六邊形上輻射出來(lái)。覺(jué)得很美么?或許老板真這么覺(jué)得,因?yàn)樗癫屎缫粯拥拿~輪,確實(shí)能唬住一群蹉B。
不要說(shuō)ServiceMesh的數(shù)據(jù)平面和控制平面分割,是靠DDD指導(dǎo)的哦,雖然它概念上靠的上。
下圖是google搜索Hexagonal Architecture出現(xiàn)的一張圖。
哎吆,六邊形呢?這圖怎么整了個(gè)10邊形?那還是六邊形架構(gòu)么?您忽悠小孩子呢?當(dāng)我不識(shí)數(shù)?什么,你又把它叫做洋蔥頭架構(gòu),它們不是一個(gè)東西?這樣的誤解在DDD中比比皆是,我也不想解釋?zhuān)驗(yàn)樗鼈兌际嵌淘掗L(zhǎng)說(shuō)。這說(shuō)明了它是一門(mén)全面的忽悠方法論,是靠堆概念和黑話起家的,宣傳者也不合格。
整個(gè)DDD這一套概念,價(jià)值觀就有問(wèn)題?;蛘哒f(shuō)作者的本意或許是好的,面向的是復(fù)雜業(yè)務(wù)。結(jié)果讓這群宣傳者和培訓(xùn)一搗鼓,就成了解決問(wèn)題的必要手段。
但是不好意思,您連起碼的順暢交流都沒(méi)整好,沒(méi)資格教別人做架構(gòu)。
三、尷尬局面
讓人覺(jué)得尷尬的是,真正需要DDD的人,并不認(rèn)同它;不需要DDD的人,被強(qiáng)迫認(rèn)同它。
DDD最大的價(jià)值是梳理業(yè)務(wù)性需求,將不同的業(yè)務(wù)領(lǐng)域劃分出來(lái),并形成領(lǐng)域之間的接口交互。說(shuō)個(gè)實(shí)話,我見(jiàn)過(guò)很多咨詢(xún)公司的大佬,他們對(duì)這種想要通吃的方法論嗤之以鼻,更傾向于使用TOGAF之類(lèi)老牌的業(yè)務(wù)梳理方法。但條條道路通羅馬,最終的領(lǐng)域劃分還是能夠達(dá)成一致。
這些梳理的過(guò)程,大部分是業(yè)務(wù)專(zhuān)家,以及系統(tǒng)架構(gòu)師的范疇。他們的工作成果,將作為輸入輸出到技術(shù)團(tuán)隊(duì)實(shí)現(xiàn)。他們需要DDD,但他們并不用。
相比較而言,DDD的戰(zhàn)術(shù)階段,毫無(wú)價(jià)值而言。比如,把數(shù)據(jù)匯總到寬表或者大數(shù)據(jù)中心,形成數(shù)據(jù)“中臺(tái)”提供交易域、管理域、查詢(xún)域的分離,我并不需要知道什么CQRS的概念,也能工作的很好。至于實(shí)體充血不充血,我本來(lái)就是微服務(wù)了,業(yè)務(wù)粒度本來(lái)就很小了,要怎么寫(xiě)是我的自由,改造也是我自己的成本,我并不需要按照你那一套來(lái)。談業(yè)務(wù)和技術(shù)的溝通?不好意思,不能溝通而去做業(yè)務(wù)的團(tuán)隊(duì),我還沒(méi)見(jiàn)過(guò)。
工程師被決策層強(qiáng)迫使用DDD戰(zhàn)術(shù)書(shū)寫(xiě)業(yè)務(wù),結(jié)果代碼更亂,更改更加頻繁。但是DDD說(shuō),不好意思,不是我的錯(cuò),是你團(tuán)隊(duì)不行。
道理是這個(gè)道理,但在現(xiàn)實(shí)中,還是有人吹噓、甚至使用這個(gè)東西去改造代碼。《微服務(wù)架構(gòu)模式》這本書(shū),甚至有事件溯源和CQRS兩個(gè)章節(jié),去專(zhuān)門(mén)講解DDD的一些落地的內(nèi)容。這叫做大師毒害了大師,當(dāng)然也叫做相互扶持。
恕我直言,如果你信了這些鬼話,大概率會(huì)把項(xiàng)目帶入死亡。盡信書(shū)不如無(wú)書(shū),架構(gòu)是一種權(quán)衡,并沒(méi)有通吃的指導(dǎo)思路。你可以參考,可以思考,但就是不能照搬,因?yàn)槊總€(gè)公司的技術(shù)前提都不一樣。
話雖如此,但當(dāng)一些概念被吹噓起來(lái)的時(shí)候,你不去擁抱它,反而會(huì)產(chǎn)生問(wèn)題。軟件行業(yè)有兩個(gè)難題,一個(gè)是怎么把復(fù)雜的事情簡(jiǎn)單的匯報(bào),另外一個(gè)就是把簡(jiǎn)單的東西搞復(fù)雜。對(duì)于前者,主要是描述你構(gòu)想的可行性。而對(duì)于后者,主要的目的就是讓人覺(jué)得很高大上,很主流,越晦澀越好。前者腳踏實(shí)地,后者口吐蓮花。
而后者的功效,顯然要比前一種有效得多。讓人聽(tīng)上去感覺(jué)很牛x,但是聽(tīng)不懂,可以獲得掌聲,也可以體驗(yàn)高高在上的感覺(jué)。沒(méi)人會(huì)承認(rèn)自己的智商不在線,你需要激起這些人的活力。只要有人認(rèn)同,就可以產(chǎn)生利益。
有些概念,有些人,并不是神,但利益共同體,需要他成為神。這玩意也有信徒,你信么?但軟件設(shè)計(jì)的工具,難道不是合適就用,不合適就扔么?為什么會(huì)成為信徒??jī)H僅是因?yàn)樯洗硕选?/p>
朋友們,在一定程度上,DDD這些概念,與比特幣之類(lèi)的概念,并沒(méi)有什么區(qū)別。這就是信仰的魔力,這就是大師的力量??!
名稱(chēng)欄目:這幾年落地的DDD,都是智商稅和大忽悠?
標(biāo)題網(wǎng)址:http://fisionsoft.com.cn/article/djeiige.html


咨詢(xún)
建站咨詢(xún)
