抽象工厂模式(Abstract Factory)

1.抽象工厂模式

抽象工厂模式,提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类。

2.关键特征

意图 需要为特定的提供对象组
问题 需要实例化一组相关的对象
解决方案 协调对象组的创建。提供一种方式,将如何执行对象实例化的规则从使用这些对象的客户对象提取出来
参与者和协作者 AbstractFactory 为如何创建对象组的每个成员定义接口。一般每个组都由独立地ConcreteFactory进行创建。
效果 这个模式将“使用哪些对象”的规则与“如何使用这些对象”的逻辑分离开来
实现 定义一个抽象类来指定创建哪些对象。然后为每个组实现一个具体类。可以用表或文件完成同样的任务

3.结构图

抽象工厂模式(Abstract Factory)_第1张图片 

4.抽象工厂模式的优点与缺点

第一:易于交换产品系列,由于具体工厂类在一个应用中只需要在初始化的时候出现一次,这就使得改变一个应用的具体工厂变得非常容易,它只需要改变具体工厂即可使用不同的产品配置。

第二:它让具体的创建实例过程与客户端分离,客户端是通过他们的抽象接口操纵实例,产品的具体类名也被具体工厂的实现分离,不会在客户代码中。

5.参考实例--就不能不换DB吗?

 

你可能感兴趣的:(抽象工厂模式(Abstract Factory))