创建型模式-抽象工厂

抽象工厂(Abstractor Factory)




Abstract Factory 和 Builder 的区别:
1)主要区别是Builder模式着重于一步一步构造一个复杂对象,
           而Abstract Factory着重于多个系列的产品对象(简单的或是复杂的)

2)Builder在最后一步返回产品, 而对于Abstract Factory来说,
           产品是立即返回的.


意图:
提供一个创建 一系列相关或相互依赖对象的接口, 而无需指定它们具体的类。




适用性:
1)一个系统要独立于它的产品的创建、组合和表示时
2)一个系统要由多个产品系列中的一个配置时
3)当你要强调一系列相关的产品对象的设计以便进行联合使用时
4)当你提供一个产品类库,而只想显示它们的接口而不是实现时




效果:


1)它分离了具体的类
2)它使得易于交换产品系列
3)它有利于产品的一致性
4)难以支持新种类的产品




实现:
1)将工厂作为单件
2)创建产品

3)定义可扩展的工厂


创建型模式-抽象工厂_第1张图片






你可能感兴趣的:(创建型模式-抽象工厂)