行为型(Behavioral)
责任链(Chain of Responsibility)
意图
避免将请求的发送方附加到其接收方,从而使其他对象也可以处理请求。
对象成为链的一部分,并且请求从一个对象通过链发送到另一个,直到其中一个对象处理该请求。
命令(Command)
意图
将请求封装在对象中,允许对具有不同请求的客户端进行参数化,并允许将请求保存在队列中。
解释器(Interpreter)
意图
给定一种语言,请定义其语法的表示形式,以及使用该表示形式来解释该语言中的句子的解释器/将域映射为语言,将语言映射为语法,并将语法映射为面向对象的分层设计
迭代器(Iterator)
意图
提供一种在不暴露其基础表示的情况下顺序访问聚合对象的元素的方法。
中介者(Mediator)
意图
定义一个对象,该对象封装了一组对象之间的交互方式。介体通过防止对象之间显式地相互引用来促进松散耦合,并且它使您可以独立地更改它们之间的交互。
备忘录(Memento)
意图
在不破坏封装的情况下捕获对象的内部状态,从而为在需要时将对象恢复为初始状态提供了一种手段。
观察者(Observer)
意图
定义对象之间的一对多依赖关系,以便当一个对象更改状态时,将自动通知和更新其所有依赖关系。
状态(State)
意图
策略(Strategy)
意图
定义一系列算法,封装每个算法,并使它们可互换。策略使算法独立于使用该算法的客户端而变化。
访问者(Visitor)
意图
表示要在对象结构的元素上执行的操作/访客可以在不更改操作对象的元素类别的情况下定义新操作。
模板方法(Template Method)
意图
定义操作中算法的框架,将某些步骤推迟到子类中/模板方法可让子类重新定义算法的某些步骤,而无需让他们更改算法的结构。
Design Patterns - 行为型(Behavioral)
最新推荐文章于 2020-07-05 15:50:58 发布