結(jié)合我們本次系列的第一篇博文中提到的上下文映射圖(傳送門:如何一步一步用DDD設計一個電商網(wǎng)站(一)—— 先理解核心概念),得知我們這個電商網(wǎng)站的核心域就是銷售子域。因為電子商務是以信息網(wǎng)絡技術為手段,以商品交換為中心的商務活動,一個好的核心域設計可以大大提升企業(yè)的競爭力和對市場變化的相應速度。

那么我們開始設計領域?qū)ο?。對于設計領域?qū)ο蟮幕靖拍畈涣私獾目梢韵乳喿x我的該系列第二篇文章(傳送門:如何一步一步用DDD設計一個電商網(wǎng)站(二)—— 項目架構(gòu))。

 

二、定義幾個基類

    我相信我們大部分人會以如下的方式去存放我們定義的基類,見圖1。

【圖1】

    這是一種比較常規(guī)的技術分層思維方式產(chǎn)生的結(jié)果,在某些項目文件中或多或少有那么幾個"Base"、"Core"、"Common"等的文件夾存放著一些通用的類,它們起著對當前項目中類的抽象、實現(xiàn)通用性支撐性功能的作用。然而在DDD中這些都應屬于基礎設施層的事情,這樣能夠保證其他層專注于自身的職責,不會把本應內(nèi)聚的東西泄露到這些類中。如我們當前的領域?qū)泳蛯W⒂陬I域建模,里面的概念全部與通用語言相關。說干就干,搬到基礎設施層去,再取個能表達出一致概念的名字的模塊存放,如圖2。

網(wǎng)友評論