设计模式之抽象工厂模式笔记

1、设计模式之抽象工厂模式,话不多说看看正式定义:

抽象工厂模式提供一个接口,用于创建相关或者依赖对象的家族,二部需要明确指定具体类。(可使用抽象接口来创建一组相关的产品,而不需要关心具体的实现是什么)

2、工厂方法和抽象工厂的区别

      a、工厂方法使用的是  类,而抽象方法使用的是对象

      b、两者都是负责创建对象,但是区别在于工厂方法模式是使用了继承,而抽象工厂是通过对象的组合。利用工厂方法创建对象,需要扩展一个类,并且覆盖他的工厂方法。

      c、工厂方法模式通过子类来创建对象。用这种方法客户只需要知道她们所使用的抽象类型,而子类负责决定具体的类型。

             抽象工厂方法模式是将相关的一群产品集合起来,提供的产品家族抽象类型,然后由其子类定义产品被产生的方法。

 3、OO原则

1、多用组合,少用继承
2、针对接口编程,不针对实现编程
3、为交互对象之间的松耦合设计而努力
4、类应该对扩展开放,对修改关闭
5、依赖抽象,不要依赖具体类

4、小结

1、所有的工厂都是用来封装对象的创建
2、简单的工厂可以将客户程序从具体类中解耦
3、工厂方法使用继承:把对象的创建委托给子类,子类实现工厂方法来创建对象
4、抽象工厂使用对象组合:对象的创建被实现在工厂接口暴露出来的方法中
5、所有工厂的模式都通过减少应用程序和具体类之间的依赖来松耦合
6、工厂方法允许将实例延迟到子类进行

猜你喜欢

转载自blog.csdn.net/LCF_lxf_ldy/article/details/84572101