我想知道命令模式和复合模式之间的关系

I would like to know the relationship between Command pattern and Composite pattern

我是计算机科学与工程系的研究生,本科专业是工业与管理工程。所以我有时对软件工程感到困惑。

GoF,在命令模式的章节,命令模式和复合模式的关系是复合模式可以用来实现MacroCommands。

我想到了存储一堆命令,可以使用复合模式。

但是没看懂。

教我设计模式的教授说宏是一堆命令,也是一个命令。这意味着关系是复合模式。

我可能不确定我是否完全理解。

我想确保我理解正确并且他的解释是正确的。

提前感谢您的帮助。

使用复合模式来表示一组命令或宏命令,允许任何进程通过统一接口使用命令,而不管它们的底层类型如何。

是的,MacroCommand 本身可以是一个命令,同时也是一个包含许多其他命令的组合。假设使用具有 Execute() 方法的 ICommand 接口,MacroCommand 的 Execute() 方法将遍历复合结构,依次调用每个节点的 Execute() 方法。

This 值得一读,因为它描述了一个建立在原始命令模式之上的命令处理器模式。它提到了 MacroCommand 的概念及其对复合模式的使用。