设计模式的理解 : 门面模式、外观模式 (Facade)
生活随笔
收集整理的這篇文章主要介紹了
设计模式的理解 : 门面模式、外观模式 (Facade)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
門面模式又稱外觀模式:主要思想就是用一個提供些專門進行對外訪問的接口,避免外部程序直接調用內部方法,對內部方法進行有效的屏蔽。
以醫院為例 : (轉自 菜鳥教程)
一個醫院的系統功能有多種,如果讓病人直接訪問這些功能就會顯得雜亂無章,不易管理。其次,如果醫院系統的功能發生變動,有可能病人的訪問行為也要跟著改變。
?
而門面模式就相當于醫院的接待員。病人只需要訪問接待員了解自己想要的功能就行,不需要知道醫院內部功能具體需要訪問哪一個類。類似與三層架構里的BLL業務層 2、充當著DAL(Data Access Layer,數據訪問層)和UI(User Interface)表示層的連接橋梁。
類似的門面模式:
class ModuleA{public:void call(string id);private:void test1();void test2(); }class ModuleB{public:bool put();private:void test1();void test2(); }class Facade{ModuleB moduleB;ModuleA moduleA;public:void callModuleA(string id){return moduleA.call(id);}void putModuleB(string content){.....bool flag = moduleB.put();..... } }用戶只需要直接使用Facade類就可以間接的使用其他類的功能。
?
?
總結
以上是生活随笔為你收集整理的设计模式的理解 : 门面模式、外观模式 (Facade)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 设计模式的理解:享元模式 (Flywei
- 下一篇: 设计模式的理解: 代理模式(Proxy)