前言 在 "上一篇" 中我们学习了行为型模式的备忘录模式(Memento Pattern)和状态模式(Memento Pattern)。本篇则来学习下行为型模式的最后两个模式,观察者模式(Observer Pattern)和空对象模式模式(NullObject Pattern)。 观察者模式 简介 ...
分类:
编程语言 时间:
2018-11-29 11:05:29
阅读次数:
240
备忘录模式(Memento Pattern)保存一个对象的某个状态,以便在适当的时候恢复对象。备忘录模式属于行为型模式。 介绍 意图:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。 主要解决:所谓备忘录模式就是在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外 ...
分类:
其他好文 时间:
2018-11-08 00:19:59
阅读次数:
240
Memento模式? 使用面向对象编程的方式实现撤销功能时,需要事先保存实例的相关状态信息。然后,在撤销时,还需要根据所保存的信息将实例恢复至原来的状态。这个时候你需要使用Memento设计模式。(以及实例实现对状态的保存) 关键字: 1.·Undo(撤销) 2.·Redo(重做) 3.·Histo ...
分类:
其他好文 时间:
2018-10-29 23:35:51
阅读次数:
364
AbstractFactory:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 Adapter:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 Bridge:将抽象部分与它的实现部分分离,使它们都可以独立 ...
分类:
其他好文 时间:
2018-10-28 11:11:44
阅读次数:
87
枚举指的是枚举矩阵的上下界,然后根据p0, p1, p2的关系去找出另外的中间2个点。然后需要记忆化一些地方防止重复减少时间复杂度。这应该是最关键的一步优化时间,指的就是代码中to数组。然后就是子矩阵的一个计算了,需要用二维前缀和预处理数据,然后判断的时候直接O(1)查询就好了。 ...
分类:
其他好文 时间:
2018-10-15 01:17:39
阅读次数:
176
一、面向对象开发中的七大设计原则 软件开发中最核心的思想就是“高内聚,低耦合”,主要的目的也是为了方便后期的维护和变更。下面的设计原则也是依靠这个核心思想衍生出来的。 1、单一职责原则【SINGLE RESPONSIBILITY PRINCIPLE】:单一职责原则想表达的核心思想就是“高内聚”,一个 ...
分类:
其他好文 时间:
2018-09-29 10:16:39
阅读次数:
193
2018-09-22 22:35:23 备忘录模式 备忘录(Memento):在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原来保存的状态。 备忘录模式UML类图 Originator(发起人):负责创建一个备忘录Memento,用以记录当前时 ...
分类:
其他好文 时间:
2018-09-23 22:35:09
阅读次数:
218
备忘录模式 备忘录模式(Memento Pattern)保存一个对象的某个状态,以便在适当的时候恢复对象。备忘录模式属于行为型模式。 C++实现代码: #include<iostream> #include<string> #include<vector> using namespace std; ...
分类:
其他好文 时间:
2018-09-23 22:27:56
阅读次数:
178
装修新房的最后几道工序之一是安装插座和开关,通过开关可以控制一些电器的打开和关闭,例如电灯或者排气扇。在购买开关时,我们并不知道它将来到底用于控制什么电器,也就是说,开关与电灯、排气扇并无直接关系,一个开关在安装之后可能用来控制电灯,也可能用来控制排气扇或者其他电器设备。开关与电器之间通过电线建立连 ...
分类:
其他好文 时间:
2018-09-19 16:23:35
阅读次数:
147
1.备忘录模式 用于备份与还原,也叫快照模式 2.实例 ...
分类:
其他好文 时间:
2018-09-01 21:57:09
阅读次数:
150