摘要: 一、概述 一般问题:很多时候我们总是需要记录一个对象的内部状态,这样做的目的就是为了允许用户取消不确定或者错误的操作,能够恢复到他原先的状态,使得他有"后悔药"可吃。 核心方案:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。 设计意图:所谓备忘录模式就是在不破坏封装的前 阅读全文
posted @ 2019-06-26 17:45 西贝雪 阅读(159) 评论(0) 推荐(0)
摘要: 一、概述 一般问题:对象结构比较稳定,但经常需要在此对象结构上定义新的操作。 核心方案:封装一些作用于某种数据结构中的各元素的操作,它可以在不改变这个数据结构的前提下定义作用于这些元素的新的操作。 设计意图:一般情况下,一个类会封装一些属性,同时会提供访问这些属性的方法。如果这个类的属性是稳定的,但 阅读全文
posted @ 2019-06-26 15:09 西贝雪 阅读(193) 评论(0) 推荐(0)
摘要: 一、概述 一般问题:在软件系统中,行为请求者与行为实现者通常是一种紧耦合的关系,但某些场合,比如需要对行为进行记录、撤销或重做、事务等处理时,这种无法抵御变化的紧耦合的设计就不太合适。 核心方案:将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化,对请求排队或记录请求日志,以及支持可撤 阅读全文
posted @ 2019-06-26 10:35 西贝雪 阅读(778) 评论(0) 推荐(0)