谁能解释工厂模式与策略模式之间的差异?
对我来说,除了一个额外的工厂类(它们以工厂模式创建产品对象)外,两者看起来都一样
工厂模式是一种创造模式。战略模式是一种运营模式。换句话说,工厂模式用于创建特定类型的对象。策略模式用于以特定方式执行一个操作(或一组操作)。在经典示例中,工厂可能创建不同类型的动物:狗,猫,老虎,而策略模式将执行特定的动作,例如“移动”;使用“跑步”,“步行”或“移动”策略。
实际上,两者可以一起使用。例如,您可能有一个创建业务对象的工厂。它可能基于持久性介质使用不同的策略。如果您的数据以XML本地存储,则将使用一种策略。如果数据在另一个数据库中是远程的,它将使用另一个数据库。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句