设计模式(一)
来源:互联网 发布:数据库事务特性 编辑:程序博客网 时间:2024/05/16 07:05
设计模式(一)
模板方法模式
定义
定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,使得子类可以不改变这个算法的结构即可重定义该算法的的特点步骤。
——《设计模式》
当一个对象有固定不变的步骤而其中有一些步骤的内容是经常改变时,可以将这些步骤设为抽象方法从而将这些变化放到不同的子类中,使得稳定的代码能够复用。
UML图
策略模式
定义
定义一系列算法,将他们一个个封装起来,并且使他们之间可相互替换。该模式使算法可独立于使用它的客户端而变化。
——《设计模式》
当对象使用的算法经常改变时,使用策略模式将算法封装起来,以到达解耦的目的。
UML图
观察者模式
定义
定义对象间的一种以对多的依赖关系,以便当一个对象的状态改变时,通知其他对象并自动更新。
——《设计模式》
当对象之间是”通知依赖关系“时,使用接口回调,减少对象之间的依赖。
UML图
装饰模式
定义
动态的给对象增加一些额外的职责,就增加功能而言比生成子类的方式更灵活。
——《设计模式》
在创建对象时如果子类有多个变化方向,可能会导致子类数量的的急剧膨胀,将继承转为组合使代码有更好的复用性和灵活性。装饰模式遵从单一职责模式。
UML图
工厂方法
定义
定义一个用于创建对象的接口,让子类决定实列化那一个对象,使实列化延迟到子类。
——《设计模式》
由于需求的变化需要创建的对象经常变化,通过工厂方法绕开new,将编译时依赖转变为运行时依赖。
UML图
- 设计模式(一)
- 设计模式 (一)
- 设计模式(一)
- 设计模式(一)
- 设计模式(一)
- 设计模式(一)
- 设计模式(一)
- 设计模式(一)
- 设计模式(一)
- 设计模式(一)
- 设计模式(一)
- 设计模式(一)
- 设计模式(一)
- 设计模式(一)
- 设计模式(一)
- 设计模式(一)观察者设计模式
- 设计模式(一)模版设计模式
- 设计模式(一):设计模式入门
- UVA 10340 All in All(水题)
- 深入理解calcBackProject
- 学习网页设计,你必须要去学习的知识点!
- Vim
- 10.03
- 设计模式(一)
- 框架入门 中级篇 (中)twig模板引擎
- 51nod 1183 编辑距离
- leetcode-013-Roman to Integer
- 长恨歌(白居易)
- 下班后的1小时, 会影响到你的工作和生活
- CUDA学习--内存处理之全局内存(5)
- Avalon,继Angular之后
- ContentProvider简单使用 -- Android学习之路