《Head First 设计模式》之工厂模式

Posted ADong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《Head First 设计模式》之工厂模式相关的知识,希望对你有一定的参考价值。

工厂模式(Factory)

  • 依赖倒置原则(Dependency Inversion Principle):依赖抽象,不要依赖具体类。
  1. 变量不可以持有具体类的引用。(如果使用new,就会持有具体类的引用。可以改用工厂来避开这样的做法。)
  2. 不要让类派生自具体类。(如果派生自具体类,就会依赖具体类。请派生自一个抽象(接口或抽象类))
  3. 不要覆盖类中已实现的方法。
  • 要点
  1. 所有的工厂都是用来封装对象的创建
  2. 工厂方法使用继承:把对象的创建委托给子类,子类实现工厂方法来创建对象。
  3. 抽象工厂使用对象组合:对象的创建被实现在工厂接口所暴露出来的方法中。
  4. 所有工厂模式都通过减少应用程序和具体类之间的依赖促进松耦合。

 

1. 简单工厂

 


 

2. 工厂方法模式

  ——定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。

 


 

3. 抽象工厂模式

  ——提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。

 

 

 

以上是关于《Head First 设计模式》之工厂模式的主要内容,如果未能解决你的问题,请参考以下文章

Head First 设计模式之工厂模式(Factory Pattern)

《Head first设计模式》之抽象工厂

Head First 设计模式之工厂模式(Factory Pattern)

工厂模式——Head First

Head First设计模式——简单工厂工厂抽象工厂

《Head First 设计模式》学习笔记——工厂模式 + 抽象工厂模式