设计模式 (持续更新)
2016-04-02 17:03
411 查看
1、工厂模式
1)优点:
统一管理对象的实例化。大规模的企业程序里要创建成千上万个对象,每个都去new,程序的业务逻辑就很混乱,统一由工厂创建,就比清晰。如果对象的初始化的过程很长很复杂,放在构造器中是很危险的,就像很多鸡蛋放到一个篮子里。所以要把对象的创建过程抽象独立出来。
工厂就是你要什么去到工厂里拿就好了,工厂负责生产,你除了使用什么都不用管,小程序你看不出优势来,打个比方说如果12亿人人,一人一个电视,那么如果每个人都去工厂里制造是多么麻烦的事,你只要告诉他你要什么类型的,工厂会生产出来给你,这个就是通俗意义上的工厂模式了。
至于说使用这个的好处,可以方便的更改应用程序,方便扩展。比如说你修改了一个类,或者在这个类的基础上生成了一个子类那么你现在要把以前使用父类的地方都给改为子类,如果小程序可能有几十个地方要改,如果大一点可能就几百几千个地方要改了。如果使用工厂模式,你只要改一个地方就可以了。
1)优点:
统一管理对象的实例化。大规模的企业程序里要创建成千上万个对象,每个都去new,程序的业务逻辑就很混乱,统一由工厂创建,就比清晰。如果对象的初始化的过程很长很复杂,放在构造器中是很危险的,就像很多鸡蛋放到一个篮子里。所以要把对象的创建过程抽象独立出来。
工厂就是你要什么去到工厂里拿就好了,工厂负责生产,你除了使用什么都不用管,小程序你看不出优势来,打个比方说如果12亿人人,一人一个电视,那么如果每个人都去工厂里制造是多么麻烦的事,你只要告诉他你要什么类型的,工厂会生产出来给你,这个就是通俗意义上的工厂模式了。
至于说使用这个的好处,可以方便的更改应用程序,方便扩展。比如说你修改了一个类,或者在这个类的基础上生成了一个子类那么你现在要把以前使用父类的地方都给改为子类,如果小程序可能有几十个地方要改,如果大一点可能就几百几千个地方要改了。如果使用工厂模式,你只要改一个地方就可以了。
相关文章推荐
- [BZOJ1602][Usaco2008 Oct]牧场行走(LCA)
- Android开发 打造自己的Annotation框架
- 第五周项目22-分数类的雏形
- [JAVA]有关比较器(Comparator接口)的用法及对象数组排序问题
- 【JUC】JDK1.8源码分析之LockSupport(一)
- Problem H: 今年第几天?
- STL中List容器类的使用方法
- Spring事务异常回滚,捕获异常不抛出就不会回滚
- Scala类(续)
- XAudio2学习之动态添加删除Voice
- Android 操作数据库Sqlite,数据写入到SD卡里面
- 数字编码基础
- MySQL 数据库主从复制架构
- MAC地址格式详解
- Problem G: 函数---判断日期(年月日)是否合法
- 串的堆分配存储表示
- IOS学习之—— APPStore无法打开或者无法正常下载APP 的解决方法
- Wireshark-TCP协议分析(包结构以及连接的建立和释放)
- hdoj--1426--Sudoku Killer(DFS好题)
- Dialog汇总