创建型设计模式
2016-05-23 10:25
232 查看
☆设计模式(微观、针对某一具体场景或者问题,所做的代码级别的设计):
1)、创建模式(产生对象):
①单例(态)模式(singleton):
◇场景---当我们需要设计一种特殊类,能且只能产生一个对象
◇解决方案(多种)---双锁机制
◇对比优劣---
②工厂模式 :
◇场景---将生产对象的类与使用对象的类进行分离。
◇解决方案(多种)---
③原型模式(Prototype):根据一个已有的对象,产生一个一模一样的对象。
2)、结构模式:①装饰器模式②适配器模式
3)、行为模式
◇装饰器模式
◇应用场景:你能在主料中找到配料,配料不能单独存在。
◇少用继承
◇桥梁模式:少用继承,多用接口。
◇在软件系统中,某些类型由于自身的路基,它具有两个或多个维度的变化,那么如果应对这种“多维度的变化”?如何利用面向对象的技术来使得该类型能够轻松的沿着多个方向进行变化,而又不引入额外的复杂度。
☆四种产生对象的方法:new 反射 反序列化 克隆
☆架构模式(宏观、主要针对工程中的类与接口的关系进行项目搭建与设计):
1)、
1)、创建模式(产生对象):
①单例(态)模式(singleton):
◇场景---当我们需要设计一种特殊类,能且只能产生一个对象
◇解决方案(多种)---双锁机制
◇对比优劣---
②工厂模式 :
◇场景---将生产对象的类与使用对象的类进行分离。
◇解决方案(多种)---
③原型模式(Prototype):根据一个已有的对象,产生一个一模一样的对象。
2)、结构模式:①装饰器模式②适配器模式
3)、行为模式
◇装饰器模式
◇应用场景:你能在主料中找到配料,配料不能单独存在。
◇少用继承
◇桥梁模式:少用继承,多用接口。
◇在软件系统中,某些类型由于自身的路基,它具有两个或多个维度的变化,那么如果应对这种“多维度的变化”?如何利用面向对象的技术来使得该类型能够轻松的沿着多个方向进行变化,而又不引入额外的复杂度。
☆四种产生对象的方法:new 反射 反序列化 克隆
☆架构模式(宏观、主要针对工程中的类与接口的关系进行项目搭建与设计):
1)、
相关文章推荐
- Caffe中卷基层和全连接层训练参数个数如何确定
- C#中字符数组,字节数组和string之间的转化
- 红黑树代码实例
- html表单
- 面向对象设计原则
- dubbo-admin 部署
- Construct Binary Tree from Preorder and Inorder Traversal (medium)
- 简单数据库连接池的原理
- UITableViewCell内放置复杂结构的subview,但subview中的Button不响应点击事件
- XML
- DEDE时间格式汇总
- C++学习(八)——函数探幽
- Altium Designer经验
- 系统启动时,spring配置文件解析失败,报”cvc-elt.1: 找不到元素 'beans' 的声明“异常
- linux yum命令详解
- 面向对象软件工程与UML
- 安装sqlyog和使用注册码
- yield 函数
- 正则表达式
- python下编译py成pyc和pyo