工厂模式和策略模式之间有什么区别?

Sappidireddy:

谁能解释工厂模式与策略模式之间的差异?

对我来说,除了一个额外的工厂类(它们以工厂模式创建产品对象)外,两者看起来都一样

tvanfosson:

工厂模式是一种创造模式。战略模式是一种运营模式。换句话说,工厂模式用于创建特定类型的对象。策略模式用于以特定方式执行一个操作(或一组操作)。在经典示例中,工厂可能创建不同类型的动物:狗,猫,老虎,而策略模式将执行特定的动作,例如“移动”;使用“跑步”,“步行”或“移动”策略。

实际上,两者可以一起使用。例如,您可能有一个创建业务对象的工厂。它可能基于持久性介质使用不同的策略。如果您的数据以XML本地存储,则将使用一种策略。如果数据在另一个数据库中是远程的,它将使用另一个数据库。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

策略和工厂设计模式有什么区别?

抽象工厂和工厂设计模式之间有什么区别?

模板方法和策略模式有什么区别?

目标c中的工厂设计模式与工厂方法设计模式以及抽象工厂之间有什么区别?

docker BRIDGE和HOST模式之间有什么区别?

流利的界面和Builder模式之间有什么区别?

Functor和Command模式之间有什么区别?

DAO和DP模式之间有什么区别?

DAO和存储库模式之间有什么区别?

模式值0777和777之间有什么区别

电源计划和电源模式之间有什么区别?

工厂设计模式和DAO设计模式有什么区别

策略模式和命令模式之间的区别

模式和模型有什么区别?

Flyweight模式和Object Pool模式之间有什么区别?

在FTP中,被动模式和扩展被动模式之间有什么区别?

托管模式和混杂模式有什么区别?

池模式和原型模式有什么区别?

只读接口模式和外观模式有什么区别?

逻辑模式和物理模式有什么区别?

工厂设计模式和抽象工厂设计模式之间的基本区别是什么?

模块和工厂功能之间有什么区别?

这些jquery延迟调用模式之间有什么区别?

Java中的Singleton设计模式和Singleton对象之间有什么区别?

在“排列,执行,断言”模式中,“排列”和“执行”之间有什么区别?

扩展方法、构建器模式和流畅接口之间有什么区别?

IIS7中“经典”和“集成”管道模式之间有什么区别?

Flyweight设计模式和Java缓存之间有什么区别

IE 10的“ Quirks”和“ Internet Explorer 5 Quirks”模式之间有什么区别?