J2EE之巔

           

          “橋模式”與“極限分割”

          SCEA SCBCD MCSD

          北京天融信軟件架構(gòu)師

          SUN,Microsoft 培訓(xùn)中心特邀高端教師

          常年提供架構(gòu)咨詢服務(wù)

          chaocai2001@yahoo.com.cn 010-82776427

          很多設(shè)計模式的書中都用這樣的語言來描述 橋模式 ”(GOF 95) – “把抽象與實現(xiàn)分開”( ”Prefactoring”, Ken Pugh,2006 , 這樣的描述實在有些讓人很難體會該模式的精髓。其實在我看來橋模式就是一種面向?qū)ο蠹夹g(shù)中“極度分割” 思想的體現(xiàn)。

          下面看一個常見的說明橋模式的例子:

          1 一個可以以不同方式輸出日志的工具類(輸出到文件或控制臺):

          1.jpg

          2 如果此時我們要求可以以多種不同格式來輸出日志(如: XML 和普通文本格式),為了適應(yīng)這一需求我調(diào)整一下類的設(shè)計

          設(shè)計一:

          ?

          2.jpg

          從以上類圖可以看出這一設(shè)計會產(chǎn)生大量的類,分析其原因可以發(fā)現(xiàn)導(dǎo)致這一問題產(chǎn)生的是根類涉及了太多方面,如果這些方面都同時進行擴展就會形成復(fù)雜的繼承 ( 層次較深 ) 。如果我們把這些可擴展的不同方面進行分割,就會得到如下設(shè)計3.jpg

          以上設(shè)計正是傳說中的“橋模式”。

          經(jīng)過以上分析我們可看到橋模式本質(zhì)就是“極度分割”思想的一種體現(xiàn)。

          posted on 2007-03-05 09:44 超越巔峰 閱讀(1711) 評論(3)  編輯  收藏

          評論

          # re: “橋模式”與“極限分割” 2007-03-05 10:12 codeslave

          對"橋模式"有一定認識,但“極度分割”思想未曾聽說過,可否解析一下?  回復(fù)  更多評論   

          # re: “橋模式”與“極限分割” 2007-03-05 11:34 dennis

          極限分割?似乎沒有展開  回復(fù)  更多評論   

          # re: “橋模式”與“極限分割” 2007-03-05 17:27 我為J狂

          能不能解釋一下“極限分割”?謝謝。  回復(fù)  更多評論   


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


          網(wǎng)站導(dǎo)航:
           

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(12)

          隨筆分類(54)

          隨筆檔案(59)

          文章分類(2)

          文章檔案(1)

          相冊

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 柳江县| 景德镇市| 胶南市| 印江| 雅安市| 怀仁县| 乌什县| 常宁市| 盈江县| 探索| 清新县| 潜江市| 平潭县| 井冈山市| 嵊泗县| 明溪县| 卢龙县| 泾阳县| 宁远县| 建平县| 河东区| 香河县| 广宗县| 白水县| 阜宁县| 和静县| 武陟县| 蛟河市| 广宗县| 定南县| 宁陕县| 平泉县| 化州市| 盈江县| 新民市| 巫山县| 绿春县| 鲁山县| 合川市| 昌都县| 康乐县|