概述
抽象工厂模式
- 目的
- 结构
- 应用
- 结论
目的
- 提供一个接口用于创建没有指定具体的类的相关或依赖对象 。
结构
- AbstractFactory : 声明一个接口创建抽象产品对象的操作。
- ConcreteFactory :实现创建具体产品对象的操作。
- AbstractProduct : 声明一个接口类型的产品对象。
- ConcreteProduct: 定义一个相应的具体工厂创建的产品对象。
- Client : 只使用AbstractFactory和AbstractProduct声明的接口类。
应用
- 一个系统应该独立产品的创建,组织,描述。
- 一个系统应该配置多个系列的产品之一。
- 一系列相关产品对象被设计在一起使用,你应该准守这个约定。
- 你应该提供一个产品类库,以及暴露他们的接口,不是实现方法。
结论
- 隔离具体的类 抽象工厂模型帮助应用程序创建类对象。因为工厂封装了创建产品对象的责任和过程,所以隔离了客户端和类的实现方法。客户端通过抽象接口操作类的实例。产品类名是隔离在具体的实现工厂中,他们不会出现在客户端代码。
- 产品更换容易 一个具体工厂类的实例化在应用程序中只出现一次。这样使应用程序很容易改变具体工厂的使用。它可以通过改变具体工厂类使用不同的产品配置。
- 促进产品的一致性 当系列产品被设计为一起使用,重要的是应用程序使用产品对象只能在一个产品系列中。
- 支持新类型的产品是很困难的 扩展抽象工厂生产新的产品是不容易的,因为抽象工厂接口管理者一系列产品的创建,支持新类型的产品需要扩展工厂接口,这需要涉及到改变抽象工厂类和它所有的子类。
最后
以上就是背后樱桃为你收集整理的设计模式 抽象工厂模式(Abstract Factory Pattern)抽象工厂模式 的全部内容,希望文章能够帮你解决设计模式 抽象工厂模式(Abstract Factory Pattern)抽象工厂模式 所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复