敏捷软件开发 - 原则、模式与实践 —— 设计模式(一)COMMAND模式和ACTIVE OBJECT模式

本文为敏捷软件开发 - 原则、模式与实践系列的一部分。

本文对应原书第13章

COMMAND模式

COMMAND模式是最简单、最优雅的模式之一。它的适用范围非常广泛。

敏捷软件开发 - 原则、模式与实践 —— 设计模式(一)COMMAND模式和ACTIVE OBJECT模式

图1

ACTIVE OBJECT模式

ACTIVE OBJECT模式是我最喜欢使用COMMAND模式的地方之一。这是实现多线程控制的一项古老技术。该模式有多种使用方式,为许多工业系统提供了一个简单的多任务核心。

敏捷软件开发 - 原则、模式与实践 —— 设计模式(一)COMMAND模式和ACTIVE OBJECT模式

图2

结论

COMMAND模式的简单性掩盖了它的多功能性。COMMAND模式可以应用于多种不同的美妙用途,范围涉及数据库事务操作、设备控制、多线程核心以及GUI的do/undo管理。

有人认为COMMAND模式不符合面向对象的思维范式,因为它对函数的关注超过了类。这也许是真的,但是在实际的软件开发中,COMMAND模式是非常有用的。

完整内容请查看敏捷软件开发 - 原则、模式与实践系列