简单工厂模式与工厂方法模式和抽象工厂模式
1. 简单工厂模式
2. 工厂方法模式
3. 抽象工厂模式
概括三种模式:
简单工厂模式:去除了与具体产品的依赖。但是当需求变动的时候,需要对原有的类进行修改,违背了开放封闭原则。
工厂方法模式:工厂方法克服了简单工厂违背的开放封闭原则的缺点,又保持了封装对象创建过程的优点。
抽象工厂模式:抽象工厂模式提供一个创建一系列相关或相互依赖对象的接口,而无需制定他们具体的类。抽象工厂接口,应该包含所有的产品创建的抽象方法,我们可以定义实现不止一个接口,一个工厂也可以生产不止一种产品类,和工厂方法模式一样,抽象工厂模式同样实现了开发封闭原则
一句话概括:工厂模式是只抽象了产品,工厂方法模式抽象了一种产品和工厂,抽象工厂模式抽象了一个产品族和工厂。