设计模式深度解析:行为、创建型模式全览
1. 行为型模式
行为型模式主要关注对象之间的交互和职责分配,以下是几种常见的行为型模式介绍。
1.1 命令模式(Command)
命令模式用于表示对对象执行某些操作的请求,而无需硬编码该请求。具体做法是实例化并配置一个命令对象,以指示要执行的操作和传递的任何参数。这种模式还允许对命令对象进行操作、存储、排队、排序,在某些情况下还可以撤销操作。
1.2 解释器模式(Interpreter)
解释器模式描述了一种(通常是简单的)编程语言的定义,以及一个能够执行该语言中命令的解释器。当你发现需要反复解决同一组问题,并且可以用一小部分操作来描述问题的解决方案时,这种模式就很适用。
1.3 中介者模式(Mediator)
中介者模式旨在促进一组通信对象之间的松散耦合。其核心是定义一个对象,封装一组对象之间的交互方式。在面向对象设计中,对象之间的行为分布可能导致对象之间存在大量的链接,这会给维护和类的复用带来问题。例如,有五个对象需要相互通信,会产生 10 个双向链接(在 Scala 中是 20 个引用),如果再添加一个对象,链接数量会增加到 15 个双向链接(30 个 Scala 引用),还可能需要修改现有的五个类。
为了解决这些问题,可以使用中介者对象。其他对象通过一个中心中介者对象以星型结构连接在一起,中介者负责控制和协调这组对象的交互。使用中介者模式后,链接数量会大大减少。例如,上述五个对象的例子,使用中介者模式后只有 5 个双向链接,添加一个对象后也只有 6 个双向链接。
中介者处理同事对象之间的通信,每个同事
超级会员免费看
订阅专栏 解锁全文
117

被折叠的 条评论
为什么被折叠?



