命令模式

命令模式定义

将请求“封装”成对象,以便使用不同的请求、队列或日志参数化其他对象。命令模式也支持可撤销的操作。

命令模式中的角色

调用者

用于发起请求

接收者

用于接收请求???没看到怎么接收的

命令

用于接收
image.png

这个命令模式,我理解起来其实更像是组合,在这里执行一个命令,都是面向接口的操作。书中有个例子是说在一个队列中,每一个元素都是一个命令,命令之间可以毫无关系,命令既是一个对象。正常设计也是这样,队列中的每个元素最小单位是一个对象。这也是命令模式的核心点:将请求封装成对象。

适配器模式

image.png
适配器模式还是很有用的,如果两个接口不适配,就可以使用这种模式。项目中典型场景就是某个接口要换掉,但是怕影响大,这个时候就可以使用适配器模式。
image.png

门面模式

也叫外观模式,外观模式是最简单的了,使用也非常简单,阿里这边用的非常多。本质就是定义一个接口。门面模式虽然简单,但还是要遵守单一原则,但也没必要太琐碎,具体情况具体分析。

门面模式定义

提供了一个统一的接口,用来访问子系统中的一群接口,好让子系统更容易用。