• <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>

            積木

            No sub title

              C++博客 :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
              140 Posts :: 1 Stories :: 11 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(1)

            我參與的團(tuán)隊(duì)

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            設(shè)計(jì)模式學(xué)習(xí)總結(jié)之一

             設(shè)計(jì)模式其實(shí)只是一種程序設(shè)計(jì)的思想準(zhǔn)則。通過(guò)該思想準(zhǔn)則來(lái)指導(dǎo)我們的程序開(kāi)發(fā)行為,盡量讓開(kāi)發(fā)的程序更加穩(wěn)健、高效、思路清晰、少bug......
            開(kāi)發(fā)一程序項(xiàng)目,往往并不只限于單一地使用某一模式。往往會(huì)多種模式同時(shí)使用。

             其實(shí),設(shè)計(jì)模式在具體項(xiàng)目中的應(yīng)用開(kāi)發(fā)中。要說(shuō)要用xxx/xxx模式來(lái)搭框架開(kāi)發(fā)等等,這些都是不對(duì)的。因?yàn)閭€(gè)人認(rèn)為,設(shè)計(jì)模式的應(yīng)用,是隨著項(xiàng)目的
            不同而定的。因?yàn)椴煌捻?xiàng)目有著不同的解決方案。而不同的解決方案,將決定著,需要使用哪xxx/哪xxx模式來(lái)處理會(huì)比較好,此時(shí)才能說(shuō),確定了項(xiàng)目
            的框架等等。
             比如說(shuō):本來(lái)需要開(kāi)發(fā)一個(gè)本地資源管理的項(xiàng)目。如果你一開(kāi)始就給它定了一定要用單實(shí)例模式來(lái)搭框架實(shí)現(xiàn)。那我們就不明白了這個(gè)實(shí)例,在框架中,
            到底它應(yīng)該是什么。反過(guò)來(lái),正常的,我們應(yīng)該根據(jù)這個(gè)項(xiàng)目的需要來(lái)確定應(yīng)該用到的模式。就拿該例子來(lái)說(shuō)。我們可以對(duì)資源方面,使用抽象工棧模式
            在資源與展現(xiàn)及其處理方面,我們可以應(yīng)用觀察模式(即:所謂的observer模式)。如此一來(lái),我很明確了,該系統(tǒng)大置的框架。這正應(yīng)了剛開(kāi)始的一句話
            :設(shè)計(jì)模式只是一種程序設(shè)計(jì)的思想準(zhǔn)則,它只是用來(lái)指導(dǎo)程序開(kāi)發(fā)的行為。

             當(dāng)然想懂得設(shè)計(jì)模式的東東,確實(shí)還是離不開(kāi)面向?qū)ο螅ǖ乃枷耄?duì)oo思想更解的越深刻,學(xué)起設(shè)計(jì)模式的將相對(duì)越輕松,也更解的會(huì)更深刻些(當(dāng)然,
            學(xué)習(xí)它將是個(gè)不斷迭代的過(guò)程的)。反過(guò)來(lái),對(duì)設(shè)計(jì)模式理解的越深刻,對(duì)oo的理解及應(yīng)用與設(shè)計(jì),也將大大有益。

            一:Factory模式(工廠模式)

             所謂的Factory模式,即:它能類似工廠一樣,不斷地產(chǎn)生(即:創(chuàng)建)“產(chǎn)品”出來(lái)。但它所創(chuàng)建出來(lái)的那些“產(chǎn)品”,一般是抽象類的產(chǎn)品。舉例:
            假如有抽象類AbstractBasicClass。我們要想使用它,必須得有它的實(shí)現(xiàn)類。按正常來(lái)說(shuō),我們可以直接通過(guò)其具體的子類實(shí)例化一個(gè)產(chǎn)品出來(lái)。但這樣會(huì)
            有個(gè)問(wèn)題,當(dāng)AbstractBasicClass擁有N種不同的實(shí)現(xiàn)子類時(shí),那我們到底要使用哪種具體子類來(lái)實(shí)例化,并且,各個(gè)不同的具體實(shí)現(xiàn)子類的命名,也將是
            個(gè)可怕的問(wèn)題。因此這樣的維護(hù)將變得十分復(fù)雜。而Factory的設(shè)計(jì)就可以起來(lái)很好的一個(gè)維護(hù)作用。其實(shí)Factory模式的設(shè)計(jì),還有一個(gè)好處,就是使得實(shí)例
            化得到了推遲(到了后期----一般指執(zhí)行期)。

            二:AbstractFactory模式(抽象工廠模式)

             上面Factory模式,其實(shí)針對(duì)的是一類類的情況,即:處理的上上面的AbstractBasicClass這一類類的情況。而實(shí)際項(xiàng)目中,卻往往需要處理N種的這樣抽象類、
            的情況。此時(shí),我們將這N種類的產(chǎn)品創(chuàng)建都?xì)w到一個(gè)Factory中時(shí),此時(shí)的Factory即為一個(gè)AbstractFactory了。因此說(shuō),F(xiàn)actory與AbstractFactory只不過(guò)
            是處理的類各類的個(gè)數(shù)差異罷了。其思想是類似的。
             但一般來(lái)說(shuō)AbstractFactory所產(chǎn)生出來(lái)的種抽象類,其實(shí)它們之間,一般來(lái)說(shuō),或多或少,會(huì)是有一定的關(guān)系的。比如:一個(gè)Abstractfactory產(chǎn)生出兩個(gè)
            抽象類的產(chǎn)品A和B。則A可能就需要B的某些功能,反之類似。

             小結(jié):Factory與AbstractFactory的設(shè)計(jì),最終的目的都只是為了使用系統(tǒng)抽象類的維護(hù)更加簡(jiǎn)單些。

            posted on 2011-05-15 12:14 Jacc.Kim 閱讀(453) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 設(shè)計(jì)模式
            91久久精品91久久性色| 97精品依人久久久大香线蕉97| 精品久久久久久无码中文字幕一区 | 久久亚洲精品无码观看不卡| 狠狠色丁香久久婷婷综合蜜芽五月 | 久久成人小视频| 国产精品一区二区久久不卡| 国产精品一区二区久久精品无码 | 久久只这里是精品66| 久久精品国产亚洲av麻豆小说| 国产一区二区三精品久久久无广告| 久久人人爽人人爽AV片| 狼狼综合久久久久综合网| 久久毛片免费看一区二区三区| 亚洲AV无码久久精品狠狠爱浪潮| 精品久久久久久亚洲| 欧美日韩精品久久久免费观看| 久久青草国产精品一区| 中文字幕久久波多野结衣av| 国产精品内射久久久久欢欢| 久久国产高潮流白浆免费观看| 欧美午夜精品久久久久久浪潮| 久久青青草原精品影院| 久久九九精品99国产精品| 久久精品中文字幕大胸| 日韩欧美亚洲综合久久影院Ds | 免费精品99久久国产综合精品| 久久亚洲AV成人无码| 久久久不卡国产精品一区二区| 99久久精品午夜一区二区| 久久亚洲国产成人精品性色| 久久精品国产亚洲av麻豆蜜芽 | 亚洲精品99久久久久中文字幕 | 久久精品国产免费| 国产成人久久精品一区二区三区| 国产成人精品综合久久久| 久久久久波多野结衣高潮| 久久久久久精品免费免费自慰| 久久99热这里只频精品6| 久久天天婷婷五月俺也去| 伊人久久大香线蕉成人|