在我们聊这个话题的时候呢,我们要先知道什么是策略模式、什么是工厂模式?
策略模式:是一个相同体系的方案集合,根据场景的不同 切换到不同的方案之顺
工厂模式:是由工厂对象根据要求创建的一个业务模型实例。
从代码上来说呢,他们都有一个 共同点,都是对业国不同的进行切换。都要有相应的业务模型实现。关键在于他们的切换方式不同。
策略模式是根据业务需求创建好业务方案模型,将模型交给上下文管理器是进行相应的业务处理。
是由工厂对象创建好实现,然后进行实例的运行。
如果还不理解大家可以搜索一下相应的代码实现。大家看到了吧,一个是自己本身运行业务,一个是交到管理器是进行运行。
那什么时候用策略模式、什么时候用工厂模式呢?
策略模式通常使用在业务上变化不大的方案集合之中,比如算法,需要自由切换的。
工厂模式相对来说就更加的灵活。可以扩展不同的业务。
那回到老话题 谁更好的呢?工厂模式相 对来说使用的比较多。因为在项目定义范围等多方 面决定了。但一个系统之中不可能只使用一个模式。自由的搭配,符合自己的项目需求才是正确模式