泥巴麒麟的BLOG

          shenAwesome@hotmail.com 縱不能,將醉做生涯,休拘束

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            195 Posts :: 2 Stories :: 80 Comments :: 0 Trackbacks

          名字看起來類似adapter,事實(shí)上完全不同。
          兩個(gè)原則:
          1.封裝變化點(diǎn)

          2.使用對象組合代替繼承,防止冗余類。
          第一個(gè)原則更為重要,明確給出了設(shè)計(jì)的依據(jù)。

          例:

          作圖程序,circle 和tangle繼承了sharp。
          問題出現(xiàn):你需要同時(shí)考慮在顯示屏上畫圖,或在pda上畫圖(完全是假設(shè)情況)
          那么是否需要為每個(gè)類增加一個(gè)附本?Circle和Circle_pda?這會導(dǎo)致冗余和過多的類。
          參照第一個(gè)原則,這里有兩個(gè)變化點(diǎn) :1是什么圖形 2是什么環(huán)境(實(shí)現(xiàn)的方式)
          用Sharp的繼承樹,記錄第一變化點(diǎn)。
          用Drawing的繼承樹,記錄第二變化點(diǎn)。
          同時(shí)在Sharp中,組合Drawing.

          原文我并沒有仔細(xì)看,總之我的直觀感覺就是:
          一個(gè)繼承樹反映一個(gè)變化點(diǎn),使用組合的方式工作。相當(dāng)于把設(shè)計(jì)二緯化,使x軸和y軸的設(shè)計(jì)能夠相對獨(dú)立。


          posted on 2007-07-05 15:53 泥巴麒麟 閱讀(175) 評論(0)  編輯  收藏

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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 白银市| 绍兴县| 宁远县| 湖北省| 车致| 永嘉县| 宜都市| 平果县| 小金县| 兰考县| 蒙山县| 杨浦区| 松原市| 阿拉善左旗| 开远市| 太和县| 鄯善县| 上犹县| 海城市| 连州市| 佛教| 万载县| 都安| 吕梁市| 眉山市| 蒲城县| 葵青区| 东宁县| 铜陵市| 嵩明县| 务川| 科尔| 通榆县| 泗阳县| 盱眙县| 元江| 秦安县| 牟定县| 夏津县| 太和县| 金坛市|