1 课程讲解 1.0 频次 1.1 类型: 1.2 定义: 1.3 适用场景: 1.4 优点: 1.5 缺点: 1.6 其他特性: 1.7 与其他设计模式关系: 1 课程讲解 1.0 频次: 使用频次很低,理解就可以,重点关注其他的设计模式 1.1 类型: 行为型 1.2 定义: ·定义:给定一个语 ...
分类:
其他好文 时间:
2020-02-15 09:49:10
阅读次数:
60
模式介绍 顾名思义,责任链模式(Chain of Responsibility Pattern)为请求创建了一个接收者对象的链。这种模式给予请求的类型,对请求的发送者和接收者进行解耦。这种类型的设计模式属于行为型模式。在这种模式中,通常每个接收者都包含对另一个接收者的引用。如果一个对象不能处理该请求 ...
分类:
其他好文 时间:
2020-02-01 16:48:05
阅读次数:
69
模式介绍 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 Context对象。策略对象改变Context对象的执行算法。 模式优点 1、算法可以自由切 ...
分类:
其他好文 时间:
2020-01-31 12:06:00
阅读次数:
53
模式介绍 解释器模式(Interpreter Pattern)提供了评估语言的语法或表达式的方式,它属于行为型模式。这种模式实现了一个表达式接口,该接口解释一个特定的上下文。给定一个语言,定义它的文法表示,并定义一个解释器,这个解释器使用该标识来解释语言中的句子,这种模式被用在SQL解析、符号处理引 ...
分类:
其他好文 时间:
2020-01-30 12:45:52
阅读次数:
92
模式介绍 备忘录模式(Memento Pattern)保存一个对象的某个状态,以便在适当的时候恢复对象。备忘录模式属于行为型模式。 模式优点 1、在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。 2、给用户提供了一种可以恢复状态的机制,可以使用户能够比较方便地回到某个历史 ...
分类:
其他好文 时间:
2020-01-29 23:41:43
阅读次数:
67
其他设计模式 JavaScript 中不常用 对应不到经典场景 原型模式 行为型 clone 自己,生成一个新对象 java 默认有 clone 接口,不用自己实现 对比 js 中的原型 prototype prototype 可以理解为 es6 class 的一种底层原理 而 class 是实现面 ...
分类:
编程语言 时间:
2020-01-29 21:27:27
阅读次数:
56
模式介绍 中介者模式(Mediator Pattern)是用来降低多个对象和类之间的通信复杂性。这种模式提供了一个中介类,该类通常处理不同类之间的通信,并支持松耦合,使代码易于维护。中介者模式属于行为型模式。 模式优点 1、简化了对象之间的关系,将系统的各个对象之间的相互关系进行封装,将各个同事类解 ...
分类:
其他好文 时间:
2020-01-29 12:54:58
阅读次数:
84
模式介绍 当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当对象被修改时,则会自动通知它的依赖对象。观察者模式属于行为型模式,Java中已经有了对观察者模式的支持类。 模式优点 1、定义对象间的一种一对多的依赖关系,当对象的状态发生改变时,所有依赖于它的对象都得 ...
分类:
其他好文 时间:
2020-01-29 10:24:23
阅读次数:
72
1) 意图 定义一系列算法,把它们一个个封装起来,并且可以使它们可以相互替换。此模式使得算法可以独立于使用它们的客户而变化(行为定义为一个类) 2) 结构 其中: Strategy定义所有支持的算法的公共接口 ConcreteStrategy 定义某个具体算法 Context通过Strategy接口 ...
分类:
编程语言 时间:
2020-01-29 01:12:37
阅读次数:
92
1) 意图 允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类 2) 结构 其中: Context定义客户感兴趣的接口,维护一个ConcreteState子类的实例,这个实例定义当前状态 State定义一个接口以封装与Context的一个特定状态相关的行为 ConcreteSta ...
分类:
编程语言 时间:
2020-01-28 22:47:20
阅读次数:
84