与上篇介绍的Factory Method工厂方法模式一样,Abstract Factory 抽象工厂模式也属于典型的“对象创建模式”模式,解决的问题也极其相似,在理解了Factory Method工厂方法模式的基础上再去理解Abstract Factory 抽象工厂模式就会变得更加容易。
文章目录
1. 动机(Motivation)
- 在软件系统中,经常面临着
“一系列相互依赖的对象”
的创建工作;同时,由于需求的变化,往往存在更多系列对象的创建工作。 - 如何应对这种变化?如何绕过常规的对象创建方法(new),提供一种“封装机制”来避免客户程序和这种“多系列具体对象创建工作”的紧耦合?
2. 代码演示Factory Method工厂方法模式
结合代码分析什么是“一系列相互依赖的对象”
2.1 常规方法
假如有一个任务需要写一个访问的是SQL Server的数据访问层,在数据访问层需要创建一系列对象,需要创建数据库的链接SqlConnection* connection
,创建数据库的命令对象SqlCommand* command
,