摘要:
简单工厂、工厂方法和抽象工厂,这三种模式名字相似,都用于创建对象,比较容易搞混。这里转载了两篇对这几个模式说明、对比写的比较清楚的文章。
从“开闭原则”角度来看,这三种模式特点如下:
(1) 简单工厂:增加新的产品时需要修改原有工厂类的代码;创建产品对象的逻辑都集中在工厂类角色。
(2) 工厂方法:适合增加产品(只需要新加具体工厂类和具体产品类,不需要改动原有工厂类代码)
(3) 抽象工厂:适合增加产品族(不需要改动现有工厂类);但是此模式不适合在同类产品族中新加一种产品(需要修改抽象工厂类的接口,影响是全局的) 阅读全文