外观模式

2019-07-14 02:11发布

外观模式,
引用(我们通过外观的包装,使应用程序只能看到外观对象,而不会看到具体的细节对象,这样无疑会降低应用程序的复杂度,并且提高了程序的可维护性。
例子1:一个电源总开关可以控制四盏灯、一个风扇、一台空调和一台电视机的启动和关闭。该电源总开关可以同时控制上述所有电器设备,电源总开关即为该系统的外观模式设计。) 本人理解就是下面有好多好多的功能个体,你把他们用袋子包装起来,有人用里面的功能的时候只告诉这个袋子就可以使用了,无需关注里面的细节,搞成一个你有,一个我要的简单方式。(当然袋子可能不确切)。注意是袋子调用个体的功能,个体不去实现袋子,还有都是类,没有接口。和上一篇的DI不同。 这里写图片描述 构建模式的组成 外观角 {MOD}(Facade):是模式的核心,他被客户client角 {MOD}调用,知道各个子系统的功能。同时根据客户角 {MOD}已有的需求预订了几种功能组合 子系统角 {MOD}(Subsystem classes):实现子系统的功能,并处理由Facade对象指派的任务。对子系统而言,facade和client角 {MOD}是未知的,没有Facade的任何相关信息;即没有指向Facade的实例。 客户角 {MOD}(client):调用facade角 {MOD}获得完成相应的功能。