三个工厂模式总结
简单工厂设计模式(单个工厂)
-
一个创建产品接口类 多个产品的实现类 一个工厂类(根据参数判断具体创建哪个产品) 具体调用工厂根据参数直接调用即可
不足:后续增加产品 需要修改工厂
工厂设计模式(每个产品一个工厂)
-
一个创建产品接口类 多个产品的实现类,以及对应每个产品都有一个工厂类 (多个工厂) 具体调用根据不同工厂直接调用即可
优点:相对简单工厂设计模式 不需要再修改工厂
不足:后续每增加一个产品 都需要增加对的的产品工厂 (代码量增加)
抽象工厂设计模式(一个系列工厂抽象为一个抽象工厂)
-
多个创建产品线的抽象类 对应多个继承抽象类的产品类 对应多个产品线都有一个工厂抽象类(形成多个抽象工厂)
对应多个工厂抽象类继承形成多个品牌(产品族) 具体调用根据不同品牌工厂直接调用即可优点:相对前两个 增加了产品族的概念
不足:创建的产品不能脱离于 产品族单独存在