对于这两种极其相似的设计模式,网上对于他们的区别众说纷纭。各种举例子,各种打比方,还有一部分人故弄玄虚说的云里雾里。
其实他们最本质区别就是:
工厂模式侧重于对象的创建。
策略模式侧重于算法的实现。
再简单点说,如果创建对象的步骤比较繁琐,那就用工厂模式。如果算法实现比较复杂就用策略模式。这才是两种设计模式的根本区别。
欢迎评论区讨论。创作不易,喜欢的点赞收藏,转载请标明出处。谢谢。
对于这两种极其相似的设计模式,网上对于他们的区别众说纷纭。各种举例子,各种打比方,还有一部分人故弄玄虚说的云里雾里。
其实他们最本质区别就是:
工厂模式侧重于对象的创建。
策略模式侧重于算法的实现。
再简单点说,如果创建对象的步骤比较繁琐,那就用工厂模式。如果算法实现比较复杂就用策略模式。这才是两种设计模式的根本区别。
欢迎评论区讨论。创作不易,喜欢的点赞收藏,转载请标明出处。谢谢。