外观模式
定义
顾名思义,责任链模式(Chain of Responsibility Pattern)为请求创建了一个接收者对象的链。这种模式给予请求的类型,对请求的发送者和接收者进行解耦。
在这种模式中,通常每个接收者都包含对另一个接收者的引用。如果一个对象不能处理该请求,那么它会把相同的请求传给下一个接收者,依此类推。
类图
Facade
代表构成系统的许多其他角色的“简单窗口”。Facade向系统外部提供高层接口
构成系统的许多其他角色
这些角色各自完成自己的工作,它们并不知道Facade角色。Facade角色调用其他角色进行工作,但是其他角色不会调用Facade角色。
示例
类图
PageMaker
1 | public class PageMaker { |
HtmlWriter
1 | public class HtmlWriter { |
Database
1 | public class Database { |
Main
1 | public class Main { |
总结
Facade模式可以让复杂的东西看起来简单。这里说的“复杂的东西”指的是在后台工作的这些类之间的关系和它们的使用方法。使用Facade模式可以让我们不必在意这些复杂的东西。