• <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++博客 :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
              140 Posts :: 1 Stories :: 11 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(1)

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

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

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

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

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

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

            一:Factory模式(工廠模式)

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

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

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

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

            posted on 2011-05-15 12:14 Jacc.Kim 閱讀(473) 評論(0)  編輯 收藏 引用 所屬分類: 設(shè)計(jì)模式
            久久香综合精品久久伊人| 亚洲va久久久久| a级毛片无码兔费真人久久| 国产精品伊人久久伊人电影| 久久精品国产第一区二区| 99久久精品免费看国产一区二区三区 | 久久精品亚洲AV久久久无码| 久久久久久国产精品无码超碰| 99久久亚洲综合精品成人| 久久婷婷五月综合成人D啪| 久久夜色精品国产噜噜亚洲AV | 久久精品国产亚洲av麻豆图片| 国产精品一久久香蕉产线看| 久久综合伊人77777麻豆| 久久国产精品无码HDAV| 久久夜色精品国产亚洲| 精品久久久久中文字幕一区| 99久久99这里只有免费的精品| 久久经典免费视频| 久久无码人妻精品一区二区三区| 国内精品伊人久久久久av一坑| 囯产精品久久久久久久久蜜桃 | 久久久久久久人妻无码中文字幕爆| 亚洲精品无码久久毛片| 久久人人超碰精品CAOPOREN| 日本三级久久网| 国产精品久久久久久久久免费 | 久久亚洲国产午夜精品理论片| 久久久久久久久无码精品亚洲日韩 | 97久久超碰国产精品2021| 无码精品久久久天天影视| 久久精品卫校国产小美女| 久久精品国产男包| 久久亚洲AV无码精品色午夜| 久久久久一级精品亚洲国产成人综合AV区| 久久99精品国产| 久久99精品久久久久久齐齐 | 久久九九全国免费| 国产91久久综合| 亚洲精品无码专区久久同性男| 午夜精品久久久内射近拍高清 |