前言
我们今天来对比下简单工厂模式和工厂方法模式.
分析
简单工厂模式就是只有一个工厂类, 这个工厂根据给出的标识返回不同的对象. 可以说最简单的设计模式, 但也是最常用的设计模式. 而工厂方法一般用于多人合作的大型项目, 因为需要通过解耦获取更好的维护性.
优缺点
简单工厂
优点:
- 客户端只要知道的类种类少
- 类的种类不多,因为只有一个工厂
- 新增类时只需要新增一个实现类
缺点:
- 新增一个实现类时, 必须要修改工厂方法, 不符合修改关闭,新增开放原则
工厂方法
优点:
- 新增一个实现类时, 不需要修改工厂方法, 符合修改关闭,新增开放原则
缺点:
- 客户端必须知道IVehicle,IFactory和许多具体的工厂实现类
- 类的种类很多, 每一个是实现类就要有一个工厂模式对应
- 新增一个实现类的同时必须新增一个工厂类
结尾
总的来说对于小型项目, 用用简单工厂就行了, 具体代码实现点我查看