posts - 16,comments - 17,trackbacks - 0

          做了這么久的軟件,從來就沒有好好的學習過設計模式。寫代碼,做設計的時候都是稀里糊涂。做出來的設計,都會不同程度的讓自己感覺到不安。這可能就是《設計模式精解》書中所說那種直覺吧。

          引用:

          留意你的知覺

          出自本能的直覺能對設計質量做出令人驚訝的預測。所謂“出自本能的直覺”,是指當你看到某些不喜歡的東西時,你胃部的感覺。我知道這聽起來并不科學(而且它的確不科學),但我的經驗總是向我證明:當我從直覺上不喜歡一個設計時,一個更好的設計一定就躺在角落里。

          Facade模式:關鍵特征

          意圖:希望簡化現有系統的使用方法。你需要定義自己的接口。
          問題:只需要使用一個復雜系統的一個子集。或者,需要用一種特殊的方式與系統交互。
          解決方案:Facade向客戶展現使用現有系統的一個新的接口。
          參與者與協作者:向客戶展現一個定制的接口,讓客戶更容易地使用現有系統。
          效果:Facade模式簡化了對所需子系統的使用。但是,由于Facade并不完整,因此某些功能對于客戶可能是可用的。
          現實:1)定義一個(或一組)新的類來提供所需要的接口。
                       2)讓新的類使用現有的系統。

          Facade模式使用于以下情況:

          • 不需要使用一個復雜系統的所有功能,并且可以創建一個新的類來包容訪問原有系統的接口的一個子集(通常它就是)比原始系統AP簡單得多。
          • 希望包裝或隱藏原有系統。
          • 希望使用原有系統的功能,并且希望增加一些新的功能。
          • “編寫一個新的類”的代價小于“讓所有人學會使用原有系統”或“在未來維護整個系統”所需的代價

           

          posted on 2005-03-13 23:41 非飛 閱讀(2653) 評論(0)  編輯  收藏 所屬分類: 軟件工程

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


          網站導航:
           
          主站蜘蛛池模板: 蚌埠市| 墨玉县| 江安县| 景宁| 吉水县| 辽中县| 湄潭县| 自治县| 黑山县| 临颍县| 揭阳市| 绥德县| 天津市| 麦盖提县| 黑山县| 乌兰浩特市| 邮箱| 中超| 旬邑县| 布拖县| 柳州市| 涡阳县| 昌江| 勐海县| 仪征市| 黄骅市| 文昌市| 阜宁县| 贵定县| 嘉定区| 天津市| 进贤县| 聂荣县| 右玉县| 嘉黎县| 惠东县| 波密县| 五台县| 九江县| 清镇市| 玉屏|