工厂模式总结
来源:互联网 发布:php 获取请求头部信息 编辑:程序博客网 时间:2024/04/28 15:21
简单工厂,工厂方法,抽象工厂模式。
1、为什么要用到工厂?
在软件系统中,经常面临着“某个对象”的创建工作,由于需求的变化,这个对象的具体实现经常面临着剧烈的变化,但是它却拥有比较稳定的接口。如何应对这种变化?提供一种封装机制来隔离出“这个易变对象”的变化,从而保持系统中“其它依赖该对象的对象”不随着需求的改变而改变。
定义一个用户创建对象的接口,让子类决定实例化哪一个类。Factory Method使一个类的实例化延迟到其子类。
2、简单工厂到工厂方法:
工厂方法,当系统扩展需要添加新的产品对象时,仅仅需要添加一个具体对象以及一个具体工厂对象,原有工厂对象不需要进行任何修改,也不需要修改客户端,很好的符合了"开放-封闭"原则。而简单工厂模式在添加新产品对象后不得不修改工厂方法,扩展性不好。
3.从工厂方法到抽象工厂:
两个工厂其实没有什么本质区别,核心都是一个抽象工厂类,其子类负责创建工作。区别就是这个创建工作,工厂方法一般都是创建单个产品对象,二抽象工厂则更具一般性,创建多个产品对象,或者叫产品族。 这多个产品对象有关联。具体关联是体现在这些产品类某些成员可以调用另一些产品类的某些成员。在产品类的接口中可以有体现。
(部分是个人理解,需要多实践)
4、结构:
简单工厂:创建具体产品的工厂类(可能多个),产品类,产品类接口,调用类,客户端
工厂方法:+抽象工厂类。
5、实例:
具体可参考:http://www.cnblogs.com/promise-7/archive/2012/05/10/2494176.html,http://www.cnblogs.com/libingql/archive/2012/12/09/2809754.html,
http://terrylee.cnblogs.com/archive/2005/12/13/295965.html,http://terrylee.cnblogs.com/archive/2006/01/04/310716.html
自己实践:AbstractFactory基本框架。AbstractFactoryKFC,AbstractFactorySalary,FactoryMethodLog
- 深入浅出工厂模式总结
- 工厂系列模式总结
- 工厂模式总结
- 工厂模式总结
- 抽象工厂模式总结
- 工厂模式总结
- 工厂模式总结
- 工厂模式总结
- 工厂模式总结
- 简单工厂模式总结
- 工厂模式总结
- 工厂模式总结
- 简单工厂模式总结
- 黑马程序员-工厂模式总结
- 知识总结之 工厂模式
- 简单工厂模式学习总结
- 设计模式: 简单工厂, 工厂方法, 和抽象工厂总结
- 简单工厂、抽象工厂和工厂模式的总结
- 点滴1
- 黑马程序员--java基础项目:银行业务调度系统
- 记录
- stm8 外部中断
- MAC设置锁屏
- 工厂模式总结
- Eclipse Luna 版本安装 Aptana 插件
- 10个学习Android开发的网站推荐-by TomHawk
- 布局获取墙纸属性
- FragmentActivity vs Activity
- idea 设置命令提示 大小写不敏感
- c实现的各种排序
- MVC设计模式
- 535A: Tavas and Nafas