(11)外观模式Facade

办事较复杂,如办房产证,多部门联系,综合部门解决一切手续问题

子系统越多,访问越复杂。内部变,客户端变,违背“开闭、迪米特法则”,

图1 办理房产证过户的相关部门

一、定义与特点

统一接口,降低耦合度,典型“迪米特法则”

对客户屏蔽了子系统组件,减少了客户处理的对象数目,并使得子系统使用起来更加容易。

降低依赖性,简化移植过程,编译不影响其他

缺点:不能很好限制客户用子系统

增加子系统外观类或客户端代码,违背“开闭原则”。

二、结构与实现

外观、子系统、客户

图2 外观(Facade)模式的结构图

(1)外观

(2)客户端

(3)子系统

三、应用场景

入口简化子系统依赖,设计接口供外界访问。提高子系统独立

四、扩展

增加系统改外观类,违背“开闭原则”引入抽象外观类解决

你可能感兴趣的:((11)外观模式Facade)