posts - 1,  comments - 0,  trackbacks - 0

          領(lǐng)域模型不是一副具體的圖,它是那副圖要極力去傳達的那個思想。

          實體:有一類對象看上去好像擁有標(biāo)識符,它的標(biāo)識符在歷經(jīng)軟件的各種狀態(tài)后仍然保持一致。
          值對象:如果值對象是可共享的,那么它們應(yīng)該是不可變的。值對象應(yīng)該保持盡量的簡單。當(dāng)其他當(dāng)事人需要一個值對象時,可以簡單地傳遞值,或者創(chuàng)建一個副本。

          服務(wù):    1. 服務(wù)執(zhí)行的操作涉及一個領(lǐng)域概念,這個領(lǐng)域概念通常不屬于一個實體或者值對象。 
                          2. 被執(zhí)行的操作涉及到領(lǐng)域中的其他的對象。 
                          3.操作是無狀態(tài)的。


          軟件代碼應(yīng)該具有高層次的內(nèi)聚性和低層次的耦合度:最常用到的兩個是通信性內(nèi)聚和功能性內(nèi)聚。通信性內(nèi)聚通常在模塊的部件操作相同的數(shù)據(jù)時使用。把它們分到一組很有意義,因為它們之間存在很強的關(guān)聯(lián)性。功能性內(nèi)聚在模塊中的部件協(xié)同工作以完成定義好 的任務(wù)時使用。


          聚合是一個用來定義對象所有權(quán)和邊界的領(lǐng)域模式。工廠和資源庫是另外的兩個設(shè)計模式,用來幫助我們處 
          理對象的創(chuàng)建和存儲問題。聚合:是針對數(shù)據(jù)變化可以考慮成一個單元的一組相關(guān)的對象。

          工廠:幫助封裝復(fù)雜的對 象創(chuàng)建過程,它就是工廠 (Factory)
          資源庫:資源庫會保存對某些對象的引用。當(dāng)一個對象被創(chuàng)建出來時,它可以被保存到資源庫中,然后以后使用時可從資源庫中檢索到。如果客戶程序從資源庫中請求一個對象,而資源庫中并沒有它,就會從存儲介質(zhì)中獲取它。換種說法是,資源庫作為一個全局的可訪問對 象的存儲點而存在。
          重構(gòu):重構(gòu)是不改變應(yīng)用行為而重新設(shè)計代碼以讓它更好的過程。
          簡化的建模:關(guān)于建模的第一件事是閱讀業(yè)務(wù)規(guī)范,從中尋找名詞和動詞。名詞被轉(zhuǎn)換成類,而動詞則成為方法。
          最好的實現(xiàn)過程的方式是使用服務(wù)。其他的處理過程的不同的方式如,將算法封裝進一個策略對象。

          約束方法化:將約束置于一個單獨的方法讓它顯示化有很多優(yōu)點。它很容易閱 
          讀,如果約束變得更復(fù)雜,這可以為向該方法增加更多邏輯提供增長空間。

          感謝infoq!

           
           
           
           
           
           
           
           
           

           

           

          posted on 2008-05-27 10:07 自由人 閱讀(257) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 永嘉县| 山东省| 金乡县| 信丰县| 天津市| 马尔康县| 温州市| 广元市| 镇巴县| 津南区| 文化| 方正县| 池州市| 榆社县| 清水河县| 东台市| 辉南县| 顺平县| 安宁市| 海伦市| 泾源县| 三台县| 嫩江县| 华池县| 诏安县| 延川县| 邵武市| 镇坪县| 东台市| 察雅县| 永济市| 宁德市| 娄底市| 元谋县| 五家渠市| 航空| 育儿| 福州市| 奉贤区| 绩溪县| 吉水县|