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

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

 

二、定義幾個(gè)基類

    我相信我們大部分人會(huì)以如下的方式去存放我們定義的基類,見(jiàn)圖1。

【圖1】

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

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式