一、模式定义 策略模式:定义一系列算法,然后将每一个算法封装起来,并将它们可以互相替换。也就是将一系列算法封装到一系列策略类里面。策略模式是一种对象行为型模式。策略模式符合“开闭原则“ Strategy Pattern: Define a family of algorithms, encapsul ...
分类:
其他好文 时间:
2019-01-01 17:27:36
阅读次数:
167
[TOC] 一、模式定义 模板方法模式就是在一个抽象类中定义一些骨架方法,然后通过类继承的方法,将一些方法延迟到继承类里。模板方法模式是一种类行为型模式,是一种比较常用的方法。不属于对象行为型模式,因为只是通过类继承实现。 Template Method Pattern: Define the sk ...
分类:
其他好文 时间:
2018-12-31 19:03:38
阅读次数:
199
参考 《设计模式:可复用面向对象软件的基础 》5.7 Observer 观察者 对象行为型模式 《设计模式解析》 18.4 Observer模式 《Android源码设计模式解析与实战》第12章 解决,解耦的钥匙--观察者模式 本人能力有限,如有明显错误,不规范的地方,请指正,谢谢。 意图 定义对象 ...
分类:
移动开发 时间:
2018-10-17 11:10:35
阅读次数:
238
策略模式 把易于变化的行为分别封装起来,让它们之间可以互相替换, 让这些行为的变化独立于拥有这些行为的客户。GoF《设计模式》中说道:定义一系列算法,把它们一个个封装起来,并且使它们可以相互替换。该模式使得算法可独立于它们的客户变化。Command命令模式是一种对象行为型模式,它主要解决的问题是:在 ...
分类:
其他好文 时间:
2018-08-15 11:17:11
阅读次数:
215
模式动机在软件设计中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个,我们只需在程序运行时指定具体的请求接收者即可,此时,可以使用命令模式来进行设计,使得请求发送者与请求接收者消除彼此之间的耦合,让对象之间的调用关系更加灵活。命令模式可以对发送者和接收者完全... ...
分类:
其他好文 时间:
2018-05-27 12:10:19
阅读次数:
141
状态模式(State Pattern) :允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。其别名为状态对象(Objects for States),状态模式是一种对象行为型模式。 主要解决:对象的行为依赖于它的状态(属性),并且可以根据它的状态改变而改变它的相关行为。 何时使 ...
分类:
其他好文 时间:
2018-03-05 14:37:16
阅读次数:
121
1、模式定义职责链模式(Chain of Responsibility Pattern):避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求。将这些对象连接成一条链。并且沿着这条链传递请求。直到有对象处理它为止。因为英文翻译的不同,职责链模式又称为责任链模式,它是一种对象行为型模式。 2、 ...
分类:
其他好文 时间:
2018-02-13 12:28:40
阅读次数:
119
介绍 优点 缺点 使用场景 入门案例: UML图解: 代码: TravelStrategy Walk Drive Plane Person Main ...
分类:
其他好文 时间:
2017-12-30 12:12:35
阅读次数:
102
OBSERVER(观察者)—对象行为型模式1.意图定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。2.别名依赖(Dependents),发布-订阅(Publish-Subscribe)3.动机将一个系统分割成一系列相互协作的类有一个常见的副作用:需要..
分类:
其他好文 时间:
2017-09-29 23:02:44
阅读次数:
277
1、模式定义 迭代器模式(Iterator Pattern) :提供一种方法来訪问聚合对象,而不用暴露这个对象的内部表示,其别名为游标(Cursor)。迭代器模式是一种对象行为型模式。 2、模式结构 迭代器模式包括例如以下角色: Iterator: 抽象迭代器 ConcreteIterator: 详 ...
分类:
其他好文 时间:
2017-08-06 12:49:04
阅读次数:
124