Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns 我想知道命令模式和复合模式之间的关系_Design Patterns_Composite_Command Pattern - Fatal编程技术网

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

Design patterns 我想知道命令模式和复合模式之间的关系,design-patterns,composite,command-pattern,Design Patterns,Composite,Command Pattern,我是计算机科学与工程系的研究生,但我的本科专业是工业与管理工程。所以我有时对软件工程感到困惑 根据GoF,在命令模式一章中,与命令模式和复合模式的关系是复合模式可用于实现宏命令 我认为可以使用复合模式来存储这组命令 但我并不完全明白 教我设计模式的教授说,宏是一组命令,也是一个命令。这意味着关系是复合模式。 我可能不确定我是否完全理解这一点 我想确保我理解正确,他的解释正确。 提前感谢您的帮助。使用复合模式表示一组命令或宏命令,允许任何进程通过统一接口使用命令,而不管其底层类型如何 是的,宏命令

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

根据GoF,在命令模式一章中,与命令模式和复合模式的关系是复合模式可用于实现宏命令

我认为可以使用复合模式来存储这组命令

但我并不完全明白

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

我可能不确定我是否完全理解这一点

我想确保我理解正确,他的解释正确。


提前感谢您的帮助。

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

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


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

非常感谢。你的推荐很有帮助。