【设计模式】外观模式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/as15932641664/article/details/82288268

  外观模式:为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用


   例子

      以喝茶为例,可以选择自己泡茶,也可以选择去茶馆喝茶。如果是自己泡茶就要自己准备茶叶、茶具和开水,去茶馆喝茶呢,你想喝什么茶,直接跟服务员说好了。这种情况顾客就无须直接和茶叶、茶具、开水等交互,整个泡茶过程由服务员来完成,顾客只需要与服务员交互就可以了。


   结构图

 

1.Facade(外观角色):在客户端可以调用它的方法,在外观角色中可以知道相关的(一个或者多个)子系统的功能和责任;在正常情况下,它将所有从客户端发来的请求委派到相应的子系统去,传递给相应的子系统对象处理。

2.SubSystem(子系统角色):在软件系统中可以有一个或者多个子系统角色,每一个子系统可以不是一个单独的类,而是一个类的集合,它实现子系统的功能;每一个子系统都可以被客户端直接调用,或者被外观角色调用,它处理由外观类传过来的请求;子系统并不知道外观的存在,对于子系统而言,外观角色仅仅是另外一个客户端而已

猜你喜欢

转载自blog.csdn.net/as15932641664/article/details/82288268