前言
- 抽象工厂设计模式是抽象方法的一种泛化。概括来说,一个抽象工厂是(逻辑上)一组工厂方法,其中的每个工厂方法负责产生不同种类的对象。
现实生活的例子
汽车制造业应用了抽象工厂的思想。冲压不同的汽车模型的部件(车门、仪表盘、车篷、挡泥板及反光镜等)所使用的机件是相同的 。机件装配起来的模型随时可配置,且易于改变。

应用案例
- 因为抽象工厂模式是工厂方法模式的一种泛化,所以它提供相同的好处:让对象的创建更容易追踪;将对象创建与使用解耦;提供优化内存占用和应用性能的潜力。
- 抽象工厂的特点:在使用工厂方法时从用户视角通常是看不到的,那就是抽象工厂能够通过改变激活的工厂方法动态地(运行时)改变应用行为,,而不需要终止应用然后重新启动。
代码实现
想象一下,我们正在创造一个游戏,或者想在应用种包含一个迷你游戏让用户娱乐。我们希望至少包含两个游戏,一个面向孩子,一个面向成人。在运行时,基于用户输入,决定该创建哪个游戏并运行。游戏的创建部分由一个抽象工厂维护。
Python设计模式 - 工厂模式
原文:https://www.cnblogs.com/se7enjean/p/13701076.html