一、适用性

在以下情况可以使用Abstract Factory 模式

1、一个系统要独立于它的产品的创建、组合和表示时。

2、一个系统要由多个产品系列中的一个来配置时。

3、当你要强调一一系列相关的产品对象的设计以便进行联合使用时。

4、当提供一个产品类库,而只想显示它们的接口而不是实现时。


二、效果

1、它分离了具体的类

2、它使得易于交换产品的系列

3、它有利于产品的一致性

4、难以支持新种类的产品