命令模式与简单工厂的区别

时间:2018-03-04 18:43:38

标签: design-patterns factory-pattern command-pattern

我正在阅读有关Head First Design Patterns的书,我仍在尝试理解Simple Factory和Command Pattern之间的明显区别。

从我看到的,它们是相同的 - 从某种意义上说,它们封装了方法的调用。

Simple Factory和Command之间的唯一区别是Simple Factory处理对象创建而Command模式处理行为吗?

因此,如果行为是关于创建对象 - 那么它是否相同?

(请不要将此标记为重复,因为我试图在这两者之间弄清楚!)

1 个答案:

答案 0 :(得分:1)

这两种模式的职责截然不同。一种是构造模式,负责创建某种类型的实例。另一个是行为,定义了需要执行的某个动作。

在某种程度上,你是对的,构建某种东西也是一种行为(行为)。因此,您可以说构造是行为模式涵盖的所有可能行为的一种行为。但是这并没有表明命令和工厂之间的平等:)它只是意味着定义某事物构造的特定行为被委托给它自己的一个名为Constructional的模式类。