夢幻之旅

          DEBUG - 天道酬勤

             :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks
          外觀模式
          為子系統中的一組接口提供一個一致的界面,
          Facade模式定義了一個高層接口,這個接口使得這一子系統更加容易使用
          外觀模式的組成部份:
          1.子系統
          2.外觀類 包含每個子系統的類,并提供一個方法,按業務邏輯依次訪問子系統里的方法,使之組成一個有機體
           例子:
          讀文件:
          package facade;

          public class ReadFile
          {   
              
          public void readFile()
              
          {
                  System.out.println(
          "讀文件");
              }

          }


          解析文件:
          package facade;

          public class ParseFile
          {   
              
          public void parse()
              
          {
                  System.out.println(
          "解析文件");
              }

          }


          存文件:
          package facade;

          public class SaveFile
          {   
              
          public void saveFile()
              
          {
                  System.out.println(
          "保存文件");
              }

          }


          外觀類:
          package facade;

          public class Facade
          {   
              
          // 解析文件
              private ParseFile parseFile;
              
              
          // 讀文件
              private ReadFile readFile;
              
              
          // 保存文件
              private SaveFile saveFile;
              
              
          public Facade()
              
          {
                  parseFile 
          = new ParseFile();
                  readFile 
          = new ReadFile();
                  saveFile 
          = new SaveFile();
              }

              
              
          public void oparatFile()
              
          {
                  
          this.readFile.readFile();
                  
          this.parseFile.parse();
                  
          this.saveFile.saveFile();
              }

          }



          外觀模式的優點:

          正如上看到的說:客戶端代碼(Program)不需要關心子系統,它只需要關心CarFacade所留下來的和外部交互的接口,而子系統是在CarFacade中聚合。

           
          Façade模式的幾個要點:

                 1、從客戶程序的角度看,Facade模式不僅簡化了整個組件系統的接口,同時對于組件內部與外部客戶程序來說,從某種程度上也達到了一種“解耦”的效果——內部子系統的任何變化不會影響到Facade接口的變化。

          2、Facade設計模式更注重從架構的層次去看整個系統,而不是單個類的層次。Facade很多時候更是一種架構設計模式。

           

          posted on 2011-08-01 00:37 HUIKK 閱讀(310) 評論(0)  編輯  收藏 所屬分類: Design Patterns
          主站蜘蛛池模板: 宜良县| 仙游县| 获嘉县| 鄂伦春自治旗| 屯昌县| 新乐市| 鄄城县| 江陵县| 道孚县| 历史| 永胜县| 犍为县| 鄂州市| 河北省| 托克逊县| 文成县| 大安市| 昌吉市| 治县。| 张家界市| 泌阳县| 清水河县| 哈巴河县| 开封市| 天峻县| 肥东县| 红河县| 连云港市| 六盘水市| 左权县| 德庆县| 镇宁| 亚东县| 保德县| 江阴市| 洪湖市| 邵东县| 乐陵市| 泰兴市| 红桥区| 博乐市|