设计模式:行为型-中介模式
中介模式是一种行为型设计模式,中介模式定义了一个单独的(中介)对象,来封装一组对象之间的交互。将这组对象之间的交互委派给与中介对象交互,来避免对象之间的直接交互。
中介模式是一种行为型设计模式,中介模式定义了一个单独的(中介)对象,来封装一组对象之间的交互。将这组对象之间的交互委派给与中介对象交互,来避免对象之间的直接交互。
解释器模式(Interpreter Design Pattern)是一种行为型设计模式,解释器模式为某个语言定义它的语法(或者叫文法)表示,并定义一个解释器用来处理这个语法。
命令模式(Command Design Pattern)是一种行为型设计模式,命令模式将请求(命令)封装为一个对象,这样可以使用不同的请求参数化其他对象(将不同请求依赖注入到其他对象),并且能够支持请求(命令)的排队执行、记录日志、撤销等(附加控制)功能。
备忘录模式是一种行为型设计模式,也叫快照(Snapshot)模式,英文翻译是 Memento Design Pattern。在不违背封装原则的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,以便之后恢复对象为先前的状态。
访问者模式(Visitor Design Pattern)是一种行为型设计模式,它允许一个或者多个操作应用到一组对象上,解耦操作和对象本身。
迭代器模式(Iterator Design Pattern)是一种行为型设计模式,也叫作游标模式(Cursor Design Pattern),迭代器模式将集合对象的遍历操作从集合类中拆分出来,放到迭代器类中,让两者的职责更加单一。
状态模式一般用来实现状态机,而状态机常用在游戏、工作流引擎等系统开发中。不过,状态机的实现方式有多种,除了状态模式,比较常用的还有分支逻辑法和查表法。
职责链模式(Chain Of Responsibility Design Pattern)是一种行为型设计模式,它将请求的发送和接收解耦,让多个接收对象都有机会处理这个请求。将这些接收对象串成一条链,并沿着这条链传递这个请求,直到链上的某个接收对象能够处理它为止。
策略模式(Strategy Design Pattern)是一种行为型设计模式,定义一族算法类,将每个算法分别封装起来,让它们可以互相替换。策略模式可以使算法的变化独立于使用它们的客户端(这里的客户端代指使用算法的代码)
模板模式是一种行为型设计模式,模板模式,全称是模板方法设计模式,英文是 `Template Method Design Pattern`。模板方法模式在一个方法中定义一个算法骨架,并将某些步骤推迟到子类中实现。模板方法模式可以让子类在不改变算法整体结构的情况下,重新定义算法中的某些步骤。
观察者模式(Observer Design Pattern)是一种行为型设计模式,它也被称为发布订阅模式,它在对象之间定义一个一对多的依赖,当一个对象状态改变的时候,所有依赖的对象都会自动收到通知。