精通Python设计模式(第2版)
上QQ阅读APP看书,第一时间看更新

1.3 小结

本章介绍了如何使用工厂方法和抽象工厂设计模式。当我们希望跟踪对象创建、解耦对象创建与对象使用,甚至提升应用程序的性能和资源使用率时,这两种模式都会派上用场。本章没有展示如何提升性能。你可以考虑把它作为一个很好的练习。

工厂方法设计模式被实现为不属于任何类的单个函数,并负责创建单个种类的对象(一个形状、一个连接点等)。我们了解了工厂方法与玩具制造的关系,提到了Django如何使用它来创建不同的表单字段,并讨论了其他可能的用例。例如,我们实现了一个工厂方法,来提供对XML和JSON文件的访问途径。

抽象工厂设计模式被实现为许多工厂方法,这些工厂方法属于单个类,并用于创建一系列相关对象(汽车部件、游戏环境,等等)。我们提到了抽象工厂与汽车制造的关系、Django的django_factory包如何使用它来创建干净的测试,然后介绍了它的常见用例。我们对于抽象工厂的实现示例是一个迷你游戏,展示了如何在单个类中使用许多相关的工厂方法。

下一章将讨论建造者模式。它是另一种创建型模式,可用于微调复杂对象的创建过程。