设计模式就该这样学:基于经典框架源码和真实业务场景
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

6.4 工厂方法模式扩展

6.4.1 工厂方法模式的优点

(1)灵活性增强,对于新产品的创建,只需多写一个相应的工厂类。

(2)典型的解耦框架。高层模块只需要知道产品的抽象类,无须关心其他实现类,满足迪米特法则、依赖倒置原则和里氏替换原则。

6.4.2 工厂方法模式的缺点

(1)类的个数容易过多,增加复杂度。

(2)增加了系统的抽象性和理解难度。

(3)抽象产品只能生产一种产品,此弊端可使用抽象工厂模式解决。