DDD分享筆記

我介紹啊啊所謂的這個近期的這些分享呢,基本都是在這個一年之內。就是這一年之內呢,其實參與了這個多個平臺的這個呃講座。和這個分享的這個活動啊,包括好比說這個呃examine啊,包括這個他不讓hurry的啊,包括q com plus。前端

就是還包括公司內部的技術沙龍。就是由於分享的這個比較的密集啊,同時呢我對本身也有必定的要求,就是每次分享的內容是不可以和之前重複的。因此呢就是等因而啊作了一個比較細嫋化的這麼一個分享,把這個本身對DDD理解的這種各個方面。架構

而後都作了一些闡述。今天呢就是分享的這個內容呢,大概百分之七八十,其實也是在以前。並無這個跟你們說過的啊。能夠說是這個本身最近一個月當中通過一些思考,而後呃怎麼說呢?獲得了一些思考的一些成果的進展吧就是。框架

怎麼說呢?就是。我感受就是說對這個DDD這個事情確實是比較的博大精深啊就是。本身呢就是會面臨一些問題,別人也會問我一些問題。而後我針對這些問題會有一些思考。而後呢就是到了這個階段來說呢,是有一些進展和進步。異步

但這個可能並非一些結論性的一些東西。今天正好我們這個節目叫作技術損壞。因此說呢嗯就和你們這個聊一聊啊,本身最近對於記憶力的一些。新的見解,新的思考。啊,接下來呢就是會很快的用3張PPT啊,簡單的介紹一下什麼是DDD。ide

而後呢,就是我擔憂就是今天來聽節目的同時,有一些其實對於滴滴的瞭解啊,或者是是聽過這個名詞啊,可是瞭解的還。因此說今天就是簡單的,我用3張PPT。來給你們講一講,就是怎麼說呢?啊,滴滴滴的一些宗旨。什麼是DDD呢?就是3張PPT確定沒法講解這個滴滴滴的所有啊。微服務

沒有辦法給你們講DDD的全包是什麼樣子的,可是呢能夠把DD的精神給你們就是展現一下啊,第一個就是追求一致。追求業務組織和這種技術架構的一致。追求抽象的這種領域的這種劃分和具體的先進。查找文微服務劃分的一致。工具

追求這種領域模型和微服務設計的一致。追求這個共同語言與需求語言和代碼的一致。再有一個就是。模型驅動。就是領域模型是系統設計的抽象,由於模型同時是產品模型的出現。再有一個就是很重要的一點就是基於這個UBCOTS language啊,就是基於共同語言。測試

就是領域內產業對共同語言有共同的理解,共同語言體驗。在需求設計及產品代碼的實踐當中。就我認爲啊就是說從個人總結上來看的話,就是呃若是是基於這三種的一種咱們的一種呃一種技術實踐工做,或者是其餘的一種工做的話。spa

那麼他均可以理解爲是一種DDD的這個體系下的一類工做。好,第二張PPT呢給你們講是DDD的地圖。就是DDD我通常來講它就是一個快是一個很是具備擴張性的這麼一個擴張性理念的。啊,這麼一個技術體系。就是你們能夠看到啊,就是從最開始的這個方法及工具啊,這些方面的話多是一些呃產品領域的,或者說是管理領域的。架構設計

的一些事情。而後到第二第二部分你們能夠看到有一些領域建模的一些工具啊,包括戰略設計戰術設計的一些工具啊,而後還有咱們的一些。三個仍是咱們剛剛最喜歡的一種啊,咱們的這種總體架構設計,微服務架構設計以及微服務的分層架構設計。

可以可以知道的最耳熟能詳的一些各類各樣的模型是四層結構,什麼六邊形結構,什麼這種洋蔥模型,而後是整潔架構模型。這些怎麼說都是在這個微服務設計這一趴裏面。還有就是說是咱們的一些具體的一些框架的實現,以及代碼的基於這個微服務設計的一些代碼的一些實現啊,以及這個咱們的API設計。

以及咱們的這個啊測試以及持續集成啊這一部分來看來講是和咱們的這種的基礎設施又息息相關。因此你們能夠看到啊,其實DDD它是一個。這個軟件研發的各個。領域的點,而後都集合起來有點極限青春面的這麼一個很是具備這種很是很是這種。

歷史。又去想了這麼一個。技術體系。就我都不能夠說它是一個呃設計模型或者是一個框架啊,其實它和這個TDD和什麼BDD來說的話是徹底不能相比的。就是弟弟弟來說的話,他是一個擴張性的,並且還在不斷擴張的這麼一個。

技術體系。其實DDD的這個核心啊,咱們能夠理解爲是從這個呃領域建模開始的啊,就領域模型驅動嘛,對吧?從這個error key events的那本書裏。他最開始講的就是什麼是領域模型啊,什麼是領域模型驅動啊,這個是它的最開始的一個核心。

可是呢從如今開始呢,就是說他愈來愈向前,也愈來愈向後。也就是說,愈來愈考慮這種他和這種這種這種軟件實現的願景的這種關係啊,以及實現這種遠見的願景,實現這種願景分析的這種工具。啊,這節課的東西開開始你們開開始研究以及分析,以及來實現這種去實現DDD的一種時機來進行這種分析。

再有就是在逐步的日後啊向後啊,就是說咱們會去作一些工具啊,來去幫助咱們的領域模型如何更好的落地啊,造成咱們的。可是在咱們造成咱們的這種代碼,造成咱們的這種上下文的這種映射關係和咱們的這種真實的這種好比說RPCHTBI這種交互關係的時候,他是不是這種。

正確的這種對應着啊,咱們過去實現不少的這種工具來幫助咱們去完成這種對應的關係。這個也是咱們一個向後的一個很是重要的一些一些目前的一些思考和咱們產生的一些工具啊就是。另外呢,其實在這個我此次的分享當中啊,還會說到一些向上的一些向下的一些思想。啊,其實來說的話,他是他不只僅有這個向前和向後兩部分。

其實仍是還在向其餘的方向進行擴展啊,在本次分享當中的話,我會逐一給你們作一個介紹。再有就是第三趴,第三趴就是前兩趴的話,其實我是在盡力,就是怎麼說呢?在和你們講DDD又是炸雞的宗旨是什麼?弟弟有什麼?而後呃怎麼說呢?最後再說給你們介紹幾本書。

最推薦的這本書就是我右邊這張圖上這本書叫作領域驅動設計精粹。就是這本書的話,實際上是說是怎麼講呢?是他比較文字很是少,大概是7萬多字啊,就是大概是花啊四個多小時的話就可以閱讀一遍。其實他等因而說這個word worlder的話,他等因而說爲這些初學者初次怎麼說呢?就是初次這個理解DDD的這個用這個怎麼說呢?

這些工程師們啊來準備的這麼一本書啊,就是說你能夠經過不多的時間,而後經過呃4個多小時的時間把這個7萬多字的書讀完以後。你就能夠入門DDD來進行這種怎麼說呢?DDD的一些啊嘗試。另外再再介紹的要求是,這個第四本書就是在這裏面的中臺架構實現啊基於DDD和微服務接口。這個我認爲是國內裏面就是說這個歐雙喜老師這本書是國內的書裏面作的很是好的一。

啊,就是說。他其實裏面的話就是把咱們很是流行的微服務中臺和這個DDD。而後這這這幾件事情作的一個有機的一個結合。而且呢他和這個。他和這個自薦比較流行這種微前端的這種思潮,也進行了一個他在他的這種理解下的框架理解下的這麼一個解讀啊。

就是怎麼說呢?啊,固然也有一些不少的思想認爲這個中臺其實和這個DDD實際上是沒有什麼關係的。其實來說仍是屬於這個關係。是硬扭怪的啊,這個其實我在不少文章中也看。看到了這種這種見解啊,可是我我本身呢也會從這個我本身的理解當中來看。你們來說的話就是來對這個中臺微服務和這個DDD之間的關係來作一個。

解讀啊,就是說我認爲就是說認爲就是怎麼說呢,就是把這個中臺和這個地址看的是沒有關係的人,其實他也是有道理的啊,甚至於說部分正確。可是呢我仍然也找出來了,就是中臺和這個DDT之間的一些關係啊,你們能夠批判的。哎,這個聽我說一下啊。

今天呢大概給你們分享這個5件事兒。如今我們來講第一件事啊,就是從從0到高速公路,從敏捷到DDD。這個話題是怎麼來的呢?就是從某某一次分享結束以後的話,就是有一個這個工程師朋友,而後就問我一個問題,就是他如今作的一顆一。

業務啊這個業務它是一個公司內相對而言偏邊緣啊這麼一個業務。可是呢這又是他是個團隊裏面很是核心的一塊事兒。可是呢問題就在於既沒產品也沒技術啊,就是人員比較稀缺啊,在這種狀況下能不能作這個DDD。這個從個人觀點上來看的話,就這種狀況來說的話,實際上仍是不可以這個。

作這種DDD的這種嘗試,或者不適合來作這個DDT類型的這個嘗試的。這個明顯來看的話,就是它不屬於一個呃怎麼說呢?一個核心業務,或者是不會在這個這個方面上怎麼說作這個過多的一個投入。這個從這個這個從這個角度上面來看的話,若是去作這種啊DDD類型的這種重構類型嘗試的話,就是怎麼講呢?

極可能是達不到目的的。可是呢當時呢,就是他又問了價格問題,那我在什麼狀況下,我能夠開始進行這個DBD的嘗試。就是。嗯,怎麼講呢?就是這個這個問題的話呢,怎麼講呢?其實呃就引發了我本身的一個思考啊,就是說其實我以爲我第一個問題回答的也不是很好,就是怎麼說呢?就是人家。

他是人家的一個核心業務啊,可是沒有資源。可是在這種狀況下的話,爲何就是就是不適合作這種啊滴滴滴類型的嘗試,這個節點到底在哪兒啊?其實書上的話並無說明這個問題。我本身呢後來再去經過一種思考以後,就今天把本身的想法分享給你們哈。就是說呃這個這個來說的話,是我在這個北大這個聽這個張一池老師的這個課的時候,而後。

哦,怎麼說呢?我把這固然聽張宇軒老師課時的一個更早時期的一個事情。可是我把這兩件事情聯繫在了一塊兒。張玉石老師是教這我的力資源管理的啊,就是他其實來說的話,他講就是說這個這個一個公司的業務其實有兩種狀態,一種叫作層連狀態,一種叫作這種。

高速公路狀態。從這個狀態的話就是說呃怎麼說呢?你能夠朝着各個方向去走啊,去探尋啊,可是呢怎麼說呢?很大程度上。你距離目標實際上是不會愈來愈接近的。這種高速公路狀態呢,就是說你可能仍是有不少條路能夠到達終點啊。

可是終點是肯定的。啊,就是路徑也是肯定的。你走,你不管怎麼走,都是在朝着這個路徑在走,關鍵在於達到終點的這個效率如何。關於另外一種說法來說的話,就是叫作用這種我們技術人來說比較常見的說法叫跨越鴻溝。就是說可能來說的話,在前兩個階段都是屬於這種嘗試階段。

而後跨越了紅宮以後,就進入了到了一個高速發展的這麼一個階段。也就是說你的目標比較明確的這麼一個階段。各類方面都要偏向去去向成熟的這麼一個階段,開始拼效率的這麼一個階段。就是那樣來說的話,其實這個用到這個DVD裏面吧,就是說。

當你的這個業務雖然是核心,可是說當你沒有一個怎麼說呢?當你沒有一個呃怎麼說呢?一個很。很明確的一個一個目標,很明確的一個願景,或者說很明確的支撐你這個一個這個業務生存下來的一個邏輯的時候啊。其實在這個階段來說的話,他也須要這種產研,就是在一塊兒來這種通力的合做。啊,固然這種狀態來說的話,一般不適合這種作這種DDD類型的。

這麼一種嘗試啊,可能更適合做爲1個DDD的一個前狀態。啊,咱們叫作這種這種敏捷開敏捷開發這種模式啊。可能這種模式來說的話,更適合這種叢林狀態。就是在我在這個007中稅經費這本書裏面來說的話,也提到了就是領域開發實際上是DDD的一個呃,怎麼說呢?一個。

一個基礎。啊,就是說它是一種產權合做的這麼一種基礎啊,可是呢。從個人見解來說,講的觀點來看的話,就是敏捷開發所達到的這種目的和這種PPT所達到的目的仍是大相徑庭的。啊。每節開發的話其實。更加的就是像我這張PPT裏面所說的,其實更加的傾向於一種交付,更看重這種交付。啊,可是說這種從滴滴滴的角度上面來看的話,其實來說。

而更加的側側重於這種怎麼講呢?側重於這種過程,對於結果的這種影響。側重於對於這種每個過程啊是否一致性的這種要求。啊,這兩種就是這種大相徑庭的。雖然他們從形式上面來看的話,都是一種產業通力合做的這麼一種狀態。

要是達到了目標的話,是徹底不同的。因此來說呢,就是說當咱們處於一種叢林狀態的時。咱們會去分析一下本身的業務啊,不管是這個產品仍是研發啊,就是你到底有沒有一個明確的願景啊,究竟是對於這個或者說對於這個接下來這個業務有沒有一個明確的一個規劃。

就是說若是說好比說這個這個答案是一個肯定的的話,那麼來說他可能已經進入到了一個快用的這麼一個階段了啊。開始從這個從這個階段進入到一個高速公路的這麼一個。狀況下啊,那沒有,他是能夠作這種開始作這種DDD的這種嘗試啊。

就同時來說呢,反過來講另外一個事情就是說好比當你的這個這個業務,從這個叢林狀態來說的話,已經找到了一個相對明確出路來說話的這種狀況下。在繼續這種敏捷開發這種狀態其實也是不合適的啊,就是敏捷開發來說的話,其實從這個從最終的狀況上面來看的話,其實它並非一個。

資源很節約的這麼一種這麼這這麼這麼一種開發模式。就是呢來來來來說的話,怎麼講呢?就是你若是說一直把這個高速公路也當作這種叢林來去看待的話,那麼最終來說的話就是產品會challenge你的這個交付的這種效率。

會不高啊?就是因此說呢,就是在這種狀況下的話,就是當這種已經從這種。叢林當中結構階段已經可以看到一個看到比較明確的願景狀況下的話,那麼來說的話,這種狀況下是能夠開始這種啊。地鐵地鐵下的這種啊,頓時這種構建或者是重構啊都是能夠的。

嗯,舉個例子來講的話,就是呃就是怎麼說呢?就是今年來說的話,其實呃去哪兒也作了不少這種很是成功的。這種。DDD類的這種重構類的一些項目。就是這個來說啊,這是一個會員卡相關的一個項目啊,這個也是這個怎麼說呢?就是在這個吳創新老師序裏面提到的這麼一類業務啊。

這個多是我們這個這個怎麼說呢?技術所發的這個毛病啊,打卡可能對這個業務也很是熟悉。就是這類業務的話是怎麼說呢?就是。咱們其實來說是在這個這個業務,這個產品和研發共同接手半年以後,而後纔開始來作的這個真正的重構。啊,一方面就是剛纔所說的,其實產品它須要摸索。

他須要這個怎麼說呢?在這個從電狀態下去找到這個東西,它真正的一個怎麼說呢?真正的真正的一個目標,真正的一個願景啊,真正的一個內在的能夠長期影響的邏輯是什麼啊?另外從這個技術角度上面來看的話,其實他也須要對這個移動系統作必定的瞭解。啊,這個左下角這張圖的話,其實它的意義就在於這個他對於這個遺留系統的一個認知和這個瞭解的。

一個過程啊,而後這個左上角和這個右邊的話,實際上是他這個對遺留系統的這個瞭解以後啊,在這個對這個系統還只有這個半年左右的這個瞭解以後,而後作的一些輸出。這些是沒有通過這個怎麼說呢?其實事件分包啊,由於這些事情而後直接作出來的一些輸出,就他和這個世界通道這些事件就是所謂的DDD體現的一些事情作出來的輸出來說實際上是。

仍是有必定的這個差異的啊,可是很想畫。他可以把一個遺留系統來說的話,這個怎麼說呢?也大體是一個什麼樣子,而後他可以作一個呃比較好的梳理啊,甚至於說的話。在這個在這個階段來說的話,他可以對這個小作一些微重構啊,也就是說對他作一些簡單的一些這種分層處理。你們能夠看到這樣可以爲之後的這種。

在這種DDD體系下的一些啊作的作的一些真正的這個好比說咱們要作一些這個微服務與這個領域模型的這種啊這種抽象模型抽象的這種領域劃分和這種具體的這種微服劃分一致的話。要作在作這種事情時候會顯得比較容易。這個是好比說就是像咱們在作這個會員卡項目的時候啊,就是當咱們作完這個。

怎麼說呢?就是這個當這個產品有了一些方向。當咱們這個啊作了一些移動系統的處理以後的話,那麼咱們開始用這種比較這種正確的這種這種這種實踐風暴這種方式。來去這個作這種真正的這種滴滴滴方面的這種重構。

這個來說的話是咱們的這個另外一個案例。就是這個案例的話,其實呃說明的仍是一個相似的問題啊,這個是咱們在這個呃某個業務的這個售後裏。啊,而後作的這麼一次地地地圖或者這麼一個嘗試啊。就是這個案例的一個特色是什麼呢?就是說你們能夠看到他在事件公告的時候,其實。

已經就是怎麼說呢?就是作出來的是這樣一個就是這這樣一個分佈啊。可是來說的話,他在這個作這個事件風暴以前的話,其實他大概準備租用兩個月的時間。一個是來說的話,就是他的這個呃參與這個重構的工程師要去了解這個DDT方面的一些知識。啊,另外來說的話,就是他的一些這種產品人員的話。

他也會就是怎麼說呢,啊,來去不停的這個來去這個諮詢。就是說這一塊他這個領域裏面到底適不適合作這種滴滴代理性重構這個資源的這個投入。是否值得?其實來說,他也是在問他本身,就是說這個來說他本身的這個究竟有沒有一個明確的一個目標啊,就是作完以後要達到一個什麼樣的一個目。

再有呢,其實就是說在這兩個月裏面的話,其實呃在準備了兩個月,而後就是去哪進行了,怎麼講。對於這個一些技術下沉類的工做,在後面也會提到啊就是說。咱們作了一些這種滴滴的課程和培訓啊,一共是這個10次左右的課程。中間還有一次這個去哪兒技術沙龍,就是把這個。

一些啊怎麼說呢?公司之外的一些朋友,而後這個邀請過來,而後作了一次這個呃怎麼說呢?對外的一次滴滴滴的一次分享。可是總共來說,它就是這個課程大概是十四課程啊。在這個過程中的話,其實在公司內部的話也培養了一批對滴滴滴有了解感興趣。而且這。

啊,怎麼說呢?認爲這個滴滴滴的這個這種重構啊,這種這種業務重塑是對自身的這種這種業務是一種有幫助,是想要怎麼一些更有認同感的分配。顯示。這個這個案例來說的話,你們能夠能夠看一下啊,就是說最開始啊是要作這種事件風暴。而後的話在這個事件風暴完了以後,要作一些命令。風暴。

命令風暴的話實際上是就相似於這個咱們日常這個產品或者加班畫一些流程圖。可是他要比流程圖的話,顯示有點像看起來啊更全面和具體。而後命令風暴完了以後的話,而後咱們會作這個微服務和這種啊微微服務映射的這個鏈接。

啊,就是這個這個contains making的工做。而後再再日後呢,咱們會作這個咱們的這個領域劃分啊,去劃分這個核心領域,支撐領域和這個抽中領域。而後咱們會針對核心領域的業務,而後會作這種這種領域模型的設計。

而後在裏面模型設計以後的話,而後咱們會作這個呃微服務設計以及這個微服務內的分層設計啊,直至這個代碼實現。啊,右邊是咱們這個。這個怎麼說呢?基於這個coco4.0的這個代碼實現。你們能夠這個怎麼說呢?把這個流程的話記一下啊,爲何呢?其實我後面還會講一個案例,其實它的這個流程和這個是徹底如出一轍的。

我認爲這個和咱們的這個就是這個滴滴的這個培訓,實際上是有必定的關係的。在滴滴培訓當中的第四講和第五講裏面,其實來說咱們都作了這種掛盤的講解。就是這個就是這個實踐的流程和咱們掛盤講解的流程是這個徹底同樣的。

因此來說的話,就是從那之後的話,就是全部的這種這種怎麼說,就這種DDD的這種領驅動設計,全部的流程就都是一種相對比較統一的這麼一種流程設計。而後第二個要講的就是這種。滴滴的普及標準化到高效化的這麼一個過程啊。

就是呃爲何呢?就是這種最開始的話就是實現這個DDD來說的話,仍是會有必定的這種啊效率問題啊,就是說咱們這個怎麼說呢?就是這個事件風暴的時間會比較長,而後這個。呃,怎麼說呢?每一次討論可能獲得的這種結果,相對而言的話怎麼講呢?呃,結果不大啊,就是說咱們會作這種屢次的這種嘗試,而後達到一個。

階段性的一個目標。那麼其實咱們要作的就是把這個這個把這個就是這種像這種世界公報這種流程作一個標準化的這麼一個工做。啊。而後呢接下來呢就是說當咱們把這個流程標準化了以後的話。那麼咱們就能夠逐步的去高效化製成這個流程。

首先讓咱們得說一下,作的是一種技術下沉類的這種工做。就是咱們這個技術下沉的話,其實呃怎麼說呢?一方面的話是咱們內部啊咱們在在內部而後作的這個地鐵地鐵零驅動課程。啊,這個課程不只有我這個內部的一些這個。觀衆有咱們這個外部的這個也吸引了不少這種外部的這個怎麼說呢?就是小夥伴他一塊兒來這個咱們的羣裏面來作這個參與。再有呢就是說。

啊,怎麼說呢?呃,也要有賴於這個相似於像咱們技術所患啊,相似像咱們這種QQQQ plus accept就是這種會議啊。這種會議裏面的話,他會把第一題單單獨的做爲一個。咱的單獨的怎麼說呢?做爲一個專題啊,還單還作這個宣傳品的這個專題,他的這個號召力啊仍是很強的啊,這些來說的話都會使咱們這個。

啊,怎麼說呢?內部小夥伴會認爲就是GDP它是一個怎麼說,它是一個值得去追求的這麼一個一種技術體系。啊,這是咱們本身的一個滴滴這種驅動的課程。啊,我們再有就是說咱們要舉的就是下一個例子啊,這個例子呢是咱們一條業務線的一個呃也是一類業務啊。

就是你們能夠看一下啊,就是這一類這類這類業務啊,其實這個這個這類業務怎麼說呢?它在咱們這種TC裏面的話,一共評審了兩次啊,第一次是在這個徹底沒有這種。做爲這作這個TTD領域驅動設計的狀況下,他本身作出一個設計。好,第二次是在這種有這種滴滴滴的驅動設計狀況下,本身作的一個設計啊,這二者就是這兩次的話咱們能夠拿出來來作一次比較。

這個是在這個他的這個第一次的一個設計。這個時候你們能夠看到它有沒有這個用例圖啊,有這個流程圖。就是你能夠發現來說,就是說這樣的話就是怎麼怎麼說呢?就是咱們在這種釘釘裏面的,好比說像事件風暴啊什麼的,可能它起到了做用,可能和這個用戶意圖實際上是差很少的。因此。

撥打。可是呢。經過這個用力圖最終獲得這個怎麼說呢?獲得獲得這個呃合適的這種。系統架構這個從這個層次上他有本身的一個內在邏輯啊,可是當咱們沒有通過這個滴滴滴的體系以後呢,從這個有用,從這種用力設計圖直接到這種流程圖。這種這種狀況下呢。

就是咱們會發現缺乏一些設計感。就是說你會你會去想,就是說啊這個用力,而後用下面的這種流程去實現啊,就是說一方面也並也並不能看到這種這種他這種系統交互的一個全貌啊。系統層次的一個全貌。每層到底付出了什麼樣的事情啊?另外一方面其實說真的,你也缺乏一個標準去衡量,就是說他這麼設計到底對不對?這麼交互究竟是對不對?

就是說怎麼說呢?由於你並不知道,好比說交互的方式,好比說好比說REC交互是一個交互,還有這種純異步的這種。好比說這種消息隊列的這種交互啊,哪一種交互實際上是正確的。其實也你也得不到一個對應的一個標準啊,其實來說的話,你本身也會也會也會對此產生一種疑惑啊。

可是這個呢這個來說呢,就是說咱們是一種就是一個相對而言比較標準的一個一個就是來作這種滴滴領驅動設計的這麼一個流程。這個我以爲這個圖實際上是1個BR的一個它的一個這個渠道設計的一個一個流程啊,這個固然了,這種流程不是惟一的啊。可是呢你只要有了這個流程以後的話,你就可讓你的這個。

全部的這個滴滴領取到設計的這種項目,都按照這個流程來去執行啊。當你有了這種基礎以後的話,有了這個基準以後的話,全部流程都按照這個這個流程去執行的話。那麼它的效率。就會就有逐步提升的可能。而且事實上的話也真就會逐步的去提升。

對,你們能夠能夠看到這個項目其實同樣的啊,仍是這種對模型設計,而後面臨風暴啊,而後這種。怎麼說呢?就是這樣這種這個這種上下文的設計,上下文映射啊,還有這個啊自定義域劃分。你想上的這個領域模型就這個樣子。

你們能夠看到就是說其實來說他是他等因而說是按照必定的這種的內在的這個邏輯去一步一步完成了這個設計。啊,咱們能夠認爲這個領領這個怎麼說呢?這個世界風暴。至關於這個最終的結果也相應當於這個是這個用力設計的這個結果啊可能差的並很少啊。可是來說的話,咱們他就沒有了這個後面的這些。

這些一步一步跟上來的這個流程。當沒有這些流程以後的話,那麼來說的話就怎麼說呢?那個獲得了一個結果,它其實就是一個資費不連續的。獲得的一個結果啊,就是他的這個正確性,或者說這種邏輯的嚴謹,請求沒有辦法獲得保證。

可是呢你們能夠看到啊,像這種嚴格按照這種啊領驅動設計的這個流程。而後來作出來的這個呃模型和它的這個結果來看吧,一個是說。你們的所執行的過程幾乎都是一致的啊,再有就是說你們所獲得的這個結果啊,就是說怎麼說呢?只要只要你認同這個這個領域設計的這個結果啊,最終他的這種。

呃,怎麼說呢?這種先進商家和微服務的這種設計的這種這種結果與它是合相比是合理的。啊,那麼有幾條走錯道,這個我在這個怎麼說呢?這個PPT開頭所說到的這個一致性。這一點啊,那麼來說你可能你極可能就是基於一致性的原則,認爲它就是一個很是合理的一種設計。

這個就是說是一種有比較有依據的這麼一種考察這個設計是否合理的這麼一個標準。再有呢就是說呃像這種地地雷島,它有一個怎麼說呢?你們都看到這個比較屬於這個四層模型的這種設計啊,就是說每一層的話它這個產生什麼樣的意義。

其實也是這個很是明確的。

可是呢就是說要補充一點啊,就是說嗯咱們在這種啊,再好比說。這種這種這種這種使用,這種契合這種啊這種怎麼說呢?整潔分層架構的這種這種好比說相似於這種啊寇納架構的時候,其實咱們仍是要有本身的一個落地規範。

就是說從這種從領域模型到落地啊之間,其實仍是須要有這麼一套規範的。甚至於說是兩套規範啊,一套是框架規範,一套是落地的代碼規範。啊,我在這裏只切出了一個框架規範,實際上仍是應該有一套代碼規範在的。這樣兩套規範在的話來約束的話,纔可以保證這個咱們的這種框架實踐和代碼實踐與咱們的領域驅動設計實踐是這個一致的。

而後接下來說的是這種前面兩兩個地方怎麼說呢?就是。啊,一方面是講了咱們的一些在這個2021年的一些領域驅動設計的一些實踐。其實咱們的一些在實踐事後的話,我本身的一些想法。再有呢就是咱們在接下來說的幾個話題呢,實際上是在想這種地理地啊,對於這個。

咱們的這種領青世界周邊的一些潛移默化的一些影響。這個怎麼說呢?就是由於最近工做也比較忙,因此這個PPT呢後面幾個就寫的就相對而言就沒有這麼多圖了啊。就是可是呢就是該說的地方呢,我也會。咱們都會說。再有呢就是第一點就是說從基礎設施的固定到基礎設施的標準化啊,其實呢啊在在這個這個。

於姐開始時我提到了,就是說呃DDD的這種落地。實際上是特別依賴於基礎設施的完善了。不管是這個API的標準化啊,這種這種怎麼說呢?這種我重構方面的這種啊自測的這種工具也。以及這種持續集成的這種工具啊,其實都是有賴於這個基礎設施的這種這種怎麼越作越厚的啊。再包括好比說咱們在第一節設計當中的話,咱們會有這種現階上下文的這種各類的這種。

這種這種交互的這種方式啊,不管是這種這種RPC的交互,HTTP的交互。而後咱們這種消費隊列這種交互。這些交互企業來說的話,他都應該是有一些對應的基礎設施,而後來提供出來,來去標準化,來作這個支撐的。DDD能帶來什麼呢?能帶來一種邊界啊,就是可以他可以知道哪些是屬於本身這種領域層的,哪些是屬於基礎設施層的。

啊,那麼來說作基礎設施層的這些工程師們和我們說,他們就可以和這個團隊他們就可以去知道哪些是徹底屬於他們的這個領域。他們就可以去不斷的去推動這些基礎設施的不斷的強化。就是呃怎麼說呢?在這種一段時間以內的話,其實基礎是和這個業務之間他們對於這種嗯基礎組建的開發的邊界實際上是是。

相對而言是不明確的啊就是。可是呢就是說從這種滴滴滴的以後來說的話,就是有了這種基礎設施層的這種概念。或者好比說在就是說他本身認爲,好比說叫作叫作platform s service,叫PNAS草啊。管這種業務層角度的SAS啊,就是source,就是那個就是什麼什麼soft risk service啊,就按照這樣這樣來來來來來來來說的話,這麼兩層以後的話。

那麼來說,他們就不只僅會是以爲本身是一個呃基礎組建的這麼一個提供方。那同時來說的話。他會這種當他的這種技術組件的這種使用,相對而言比較的固定。相對而言,比較標準的時候,在這種基礎組架,這種使用也會被變得標準化。

啊,這個是這個接下來的話就是怎麼說呢?這個呃基礎研發團隊要去作的一些事情啊,就是他的這種使用都會變得這種標準化的。就是我在這裏舉的這個這這這幾個例子來說的話,其實來說只是一種只是作的他們要作的其中的一部分啊,可是其實來說的話。

怎麼說呢?這種你們能夠就是怎麼說呢?就是從感覺這麼這麼一種我要說的這麼一個意思就是說。DDD其實會使這種基礎設施操,他們會有意願變得作的愈來愈厚實。他們會會會會作的會怎麼說呢?把一些屬於基礎的東西,越基礎的東西作得愈來愈標準。

這個是他們會。啊,怎麼說呢?在這種滴滴滴的這種框架下,他們會去完成一些事情。再有一個就是從分層架構。分層架構。這個要設置什麼事情呢?第一個分層架構說的是這個前面這一章的這個分層架構啊,這個是咱們在微服務劃分以後啊。

咱們怎麼說呢?在這個微服務內部作的這個分層架構啊,這個分層架構咱們都很是的耳熟能詳啊,你們都對它很是的熟悉啊。可是我說的第二個這個分層架構是什麼呢?它是咱們的一個總體性的這麼一個分層架構的造成。就是DDD呢,它仍是剛纔那個觀點,它產生了一種怎麼說呢?它會讓你們就是都會有一種邊界的這麼一種意識啊就是。

這種邊界意識呢在這種呃軟件設計方面的話,多是個好的意識啊,就是咱們會咱們應該這麼這麼講這件事情。就是說咱們在作在作這種軟件設計的,就是在和這個本身的兄弟團隊進行溝通的時候有變化。文件意識確實是一個好的事情啊,可是做爲一我的來說的話,從一我的承擔責任角度來說的話,怎麼說呢?就是可能這個邊界意識並非一個真正好好的一個東西啊,可是。

咱們從這個軟件設計上來看的話,有必定的邊界意識,實際上是可以促進這個怎麼說呢?這個軟件工程而後向着更爲整潔的方向來發展。如今來看的話,就是咱們的這種由於有了這些邊界的意識啊,就是咱們的這個總體的這個軟件的結構啊,實際上是向着這種。

層次愈來愈清晰的這種模式啊,就像這個右下角這個圖同樣,見到這個層次愈來愈清晰的這個方向。而後來作這種眼睛。就是。你們能夠理解怎麼說,我說這個開始說會有一箇中臺啊,就是中臺是什麼呢?其實。呃,中臺若是不是從這種其餘的視角上面來看的話,其實沒有辦法說本身是否是一個狀態啊。這個我在一個其餘的這個。

一個這個怎麼說呢?其餘的一個分享裏面也講過這個這個觀點啊,就是可是呢好比我從前業務前臺的這種BFF層的這個觀點上面來看的話。那麼來說的話,爲BIF層提供很是核心的這種業務能力的這些服務,我就能夠把它看做是個人中臺。

其實怎麼講呢?咱們能夠想到就是說其實定義地所服務的核心就是這幾個六邊形的這這這幾層啊。這個是DDT所所核心所服務的這一基層啊,上面在此上此下此用啊,這些都不是DDD所核心的服務的這個核心層次啊。雖然這個鷗創新老師。

在他的書裏面,其實提到了這個對於這個什麼BFF層或者說BF層以上層,對於這種微前端這一塊的一個支撐啊。提到這個好比說像這種呃像像這種領域驅動,其實它是一個領域的一個拆分。可是到了這種呃對於這種微服務層的話,其實它是一個領域的聚合。

其實講到了這麼一個觀點。啊,可是來說的話,呃,講到這些的書仍是很是少。另一樣的話,其實他其餘任何我創新老師的這個這個觀點其實不見得一致。另外就是說呃怎麼說呢?就是否是每個每一本。講第一頁書都會講到相似的觀點。

就是。這樣啊就是。最核心服務的就是這個六邊形所在的這個層啊,不管你是一個核心領域支撐率仍是通用率,核心服務的是這階層。可是呢就是說當你的當你的這個怎麼說呢?這個服務愈來愈有邊界感的時候,那麼每個服務針對於像BF層這種層的話。

就極可能他會把你看做是一箇中臺。而你本身之間的話,這些六邊形之間的這個交互,他們是屬於這種現階上下文之間的這個交互。今年上下文以內的話,它的實體就是一個微服務。就是微服務陷進上下文和中臺,其實只是從不一樣角度去描述一個事物啊。

在我看來可能描述都是這同一個實體啊,只是我咱們可能再從這種再從這種好比說抽象的這種這種領域模型和這種實際的這種這種現階上下文關係的一致性方面的時候,咱們管他叫現金生涯本。多是咱們我我咱們從這種這種描述微服務劃分合理玻璃的狀況的時候的時候的話,咱們會叫作這種會把它看做是微服務啊,可是。

咱們好比說從他的這種其餘層次去去接受他的一些一種核核心的能力的時候,可能又會把它叫作中臺。這多是一種不一樣觀點,不一樣從不一樣角度去看這個東西啊。另外這個這個中臺它不是一個怎麼說呢?可能它不是一個刻意而爲之的這麼一種現象啊就是。

有一段時間來說的話,其實咱們能夠迴避這個詞就是中臺啊,多是以爲這個怎麼說呢?是這個不適合啊這樣這樣一個觀點。可是來說話。他可能就是說他不是以你這個直觀的意志來這個轉移的啊,就是說當它造成的時候,它就是造成的就是你在作這個DDD的過程中的話,它會天然而然的。

就會造成一個這麼一個提供核心能力的這麼一個服務。甭管你管他描述的是否是叫作中臺。就是。再有一點呢,就是就像剛纔我說的,就是基礎服務這一層他會作的愈來愈厚實。那麼發有一點啊,就是這個像這個BMF。他也有這種愈來愈挫越厚實的這麼一種傾向啊。

爲何呢?其實來說就是當咱們這個業務比較穩定的這個時候啊,其實咱們是並不習慣於就是這個。一個一個需求。好比說他這個調動的鏈路過長啊,調用的鏈路過深啊,其實來說的話,這些都會使得這個咱們這個交付效率變低。

啊,出錯的這種機率變高啊,這種依賴的複雜度變高啊,都會出現這種事情。其實在咱們這種有些業務的在這種怎麼說呢?在這種。啊,在這一兩週的這種這個實踐過程中的話,也遇到這個相似的這個狀況。也遇到了相似的狀況啊就是。

那麼來說呢,就是咱們經過這種滴滴滴的這種方式啊,就是說是咱們可以去認清本身的這個所在的層次,是一個什麼樣的層次啊,有。經過有邊界的方式去作這種相似的對相似的這種事情。那麼呢就是把一些業務聚合的一些聚合的邏輯放到BFF上去作。也就是把這個聚合邏輯放在偏下游的這個層次去作。

這樣的話呢就是可以有效的去下降這種怎麼說呢?這種系統的複雜度啊,而後使得這個這種交互的鏈路不至於過長。我認爲就是說是這種怎麼說呢?就是作的這種小小的這種中臺啊,而後這種前臺逐漸的這種坐後。啊,作大啊,這多是一種在這種業務比較穩定,在這種高速公路的這種業務的這種形態下的話,是一個天然而然的這麼一種。

變化啊,而不是一種刻意而爲之的這麼一種。變化。再有呢就是說咱們在講咱們在講中這種BFF層逐漸作厚啊,而後這種基礎設施層逐漸作厚以後的話那。那其實業務中臺層的這種人才啊,其實來說的話,他們就會有更多的時間去這種思考本身的業務。

這一點的話其實就講到了後面的一個問題。就是這種從這個技術負責人到項目流程中的這種主兒。就是啊這個也是今天講最後一個事情。就是怎麼講呢?就是當咱們這個怎麼說呢?這種這種這樣的這種業務方面的這種這種主要的這種核心的業務系統裏面來說話。咱們須要有一些。

啊,人他不只僅是這種什麼什麼什麼深度的方向去發展啊,同時也須要像這種啊在作這種業務,同時可以作技術設計。同時可以作流程把控的這個方向去這個去去發展的時候。可是呢若是說經過咱們的這種基礎設施上,或者BMS可以有效的去下降這些人。

壓力的狀況下,那麼這件事就會變得這個很是的可行啊。同時來說的話,咱們還會有另外一個趨勢,就是咱們的其實在這種高速工做的這種階段來說的話,其實產品須要顧及的事情會愈來愈多。你們能夠看到就是說從個人感覺上面來看的話,也是就是說這種產品人員的話,其實他是。

可以怎麼說呢?他實際上是呃可以愈來愈少的有精力去***到這種真正的這種業務的這種開發的流程過程中的。其實他須要把這種更多的這種精力留在本身的這種這種產品的思考啊,或者這種這種數據的這種分析和挖掘。我我點開點開這個這個階段啊,因此也客觀的也須要這種在這種啊業務的這種核心業務流程當中的話,有更多的這種呃這種技術人員。

可以這種負起這種主要的一個責任啊,其實來說的話,這個也就是說咱們在這種核心的這種怎麼講呢?就是這種這種這種在這種這種第一屆這種核心領域的這種技術人員的話。就是說他所知道他所可以去呃關注的這個面兒啊,比籃球變得更寬啊,大概是這種這麼一個意思。

好了好了,今天那個跟你們分享這個大概有將近50分鐘的這個時間。老公。

相關文章
相關標籤/搜索