• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 181  文章 - 15  trackbacks - 0
            <2008年12月>
            30123456
            78910111213
            14151617181920
            21222324252627
            28293031123
            45678910

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            My Tech blog

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            顧客和售貨員之間的關(guān)系說明了兩個問題。首先,在開發(fā)者看來,這是兩個真實的人之間所存在的一種關(guān)系。另一方面,它又表示了兩個程序?qū)ο笾g的一種指向關(guān)系,或者說代表一種數(shù)據(jù)庫數(shù)據(jù)檢索,也可能是其他的什么。

            當(dāng)然這種關(guān)系未必那么直接。一對多的聚合關(guān)系未必就是一個對象含有另外一個對象的集合。也許只是從數(shù)據(jù)庫去查詢數(shù)據(jù),然后實例化一些基于數(shù)據(jù)的東西。當(dāng)然需要從中選擇一種機制才行。

            在現(xiàn)實生活中,存在著很多的多對多關(guān)系,其中又有很多是雙向多對多關(guān)聯(lián)。這種關(guān)聯(lián)讓我們程序的實現(xiàn)變得相當(dāng)復(fù)雜。其實,仔細想一想,這些復(fù)雜的多對多關(guān)系未必就是實用的。

            現(xiàn)在有三種方式來簡化這種關(guān)系。

            1、使用有向關(guān)聯(lián)。

            2、使用限定詞。

            3、除去那些不重要的關(guān)系。

            應(yīng)該盡可能的給程序中的關(guān)系加上一些限制。雙向關(guān)系總是意味著關(guān)聯(lián)的兩方互相依存。如果程序中不總是使用關(guān)聯(lián)的任意一方導(dǎo)航到另一方,那么為關(guān)聯(lián)添加方向性將會大大簡化設(shè)計以及對象之間的依賴關(guān)系。如果你真的深入到領(lǐng)域中,你就會了解到領(lǐng)域本身也含有這么一種傾向。

            舉個例子來說。任何國家都會有領(lǐng)導(dǎo)人(總統(tǒng))。這就是一種雙向關(guān)聯(lián)。但是在日常生活中我們往往不會這樣問:里根是哪個國家的總統(tǒng)?而是會這樣問:美國總統(tǒng)是誰?這就是領(lǐng)域本身的一種傾向。利用這種傾向,我們就可以簡化總統(tǒng)和國家之間的關(guān)系,簡化我們的設(shè)計。這代表著一種對于領(lǐng)域的深入理解。同時,也能讓更加泛化的類“人”來作為關(guān)聯(lián)對象之一。如下圖:

            image

            隨著我們對領(lǐng)域更加深入的理解,我們發(fā)現(xiàn),除非非常時期,美國在一個時間階段內(nèi)只有一個總統(tǒng)。這又給了我們一個契機。我們可以把國家-總統(tǒng)這種多對一關(guān)系轉(zhuǎn)化成為一種“一對一”關(guān)系(至少是有條件的多對一關(guān)系)。這同時也為我們的設(shè)計添加了一個重要規(guī)則。我們的程序可以應(yīng)付諸如“誰是美國1970年總統(tǒng)”這樣的問題了。

            如下圖:

            image

             實際上部分無向的多對多關(guān)系的簡化也更加突出了那些不能簡化的無向多對多關(guān)系。這也突出了我們領(lǐng)域中的一些重要關(guān)系所代表的一些重要概念。

            終極的對關(guān)系的簡化就是除去關(guān)系,如果你認為這些關(guān)系對于領(lǐng)域而言不那么關(guān)鍵的話就可以這么做。

            posted on 2007-09-11 22:15 littlegai 閱讀(242) 評論(0)  編輯 收藏 引用

            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            天堂无码久久综合东京热| 久久久久久精品久久久久| 久久免费视频网站| 久久99亚洲综合精品首页| 一本大道久久香蕉成人网 | 国产精品久久国产精品99盘| 久久香蕉一级毛片| 欧美久久天天综合香蕉伊| 无码专区久久综合久中文字幕| 久久福利青草精品资源站| 久久香综合精品久久伊人| 久久婷婷国产麻豆91天堂| 久久久久亚洲AV成人网人人网站 | 久久久WWW免费人成精品| 亚洲伊人久久大香线蕉综合图片 | 亚洲va国产va天堂va久久| 国产A级毛片久久久精品毛片| 久久午夜夜伦鲁鲁片免费无码影视| 蜜桃麻豆www久久| 久久一日本道色综合久久| 日韩欧美亚洲综合久久影院Ds | 久久久无码精品亚洲日韩京东传媒| 日本福利片国产午夜久久| 浪潮AV色综合久久天堂| 久久天天躁狠狠躁夜夜躁2014| 精品国产婷婷久久久| 久久亚洲精品中文字幕三区| 国产精品久久成人影院| 久久国产热精品波多野结衣AV| 亚洲精品无码久久久久sm| 香蕉久久久久久狠狠色| 免费精品久久天干天干| 香蕉久久永久视频| 久久久久久久女国产乱让韩| 久久综合九色综合网站| 日韩久久久久久中文人妻| 亚洲AV无码成人网站久久精品大| 午夜人妻久久久久久久久| 人妻无码αv中文字幕久久| 久久精品国产亚洲AV电影| 精品熟女少妇av免费久久|