摘要: 定义(百度百科): 在不破坏封闭的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 UML类图: 具体代码: 各模块说明:Memento:备忘录,存储Originator的对象状态,存储哪些应该由Originator决定。Originator:原 阅读全文
posted @ 2017-08-30 16:03 重名 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 定义(并非来自百度百科,百度没收录此词条...): 用一个中介对象(中介者)来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者模式又称为调停者模式,它是一种对象行为型模式。 UML类图: 具体代码: 模块说明:Mediator:该接 阅读全文
posted @ 2017-08-28 17:21 重名 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 定义(百度百科): 迭代器模式(Iterator Pattern)提供一种方法来访问聚合对象,而不用暴露这个对象的内部表示,其别名为游标(Cursor)。迭代器模式是一种对象行为型模式。 UML类图: 具体代码: 模块说明:Iterator:它定义了访问和遍历元素的接口,声明了用于遍历数据元素的方法 阅读全文
posted @ 2017-08-22 16:35 重名 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 定义(From百度百科): Interpreter(解释器)模式是一种特殊的设计模式,它建立一个解释器(Interpreter),对于特定的计算机程序设计语言,用来解释预先定义的文法。简单地说,Interpreter模式是一种简单的语法解释器构架。 UML类图: 抽象具体代码: 模块说明:Abstr 阅读全文
posted @ 2017-08-21 18:00 重名 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 定义(百度百科):在软件系统中,“行为请求者”与“行为实现者”通常呈现一种“紧耦合”。但在某些场合,比如要对行为进行“记录、撤销/重做、事务”等处理,这种无法抵御变化的紧耦合是不合适的。在这种情况下,如何将“行为请求者”与“行为实现者”解耦?将一组行为抽象为对象,实现二者之间的松耦合。这就是命令模式 阅读全文
posted @ 2017-08-17 16:15 重名 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 定义(百度百科): 责任链模式是一种设计模式。在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链。请求在这个链上传递,直到链上的某一个对象决定处理此请求。发出这个请求的客户端并不知道链上的哪一个对象最终处理这个请求,这使得系统可以在不影响客户端的情况下动态地重新组织和分配责任。 阅读全文
posted @ 2017-08-06 16:34 重名 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 定义(百度百科): 为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 UML类图: 具体代码: 模块说明:Subject抽象主题:声明真实主题和代理主题的共同接口。RealSubject真实主题 阅读全文
posted @ 2017-08-03 15:01 重名 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 定义(百度百科): 享元模式(英语:Flyweight Pattern)是一种软件设计模式。 它使用共享物件,用来尽可能减少内存使用量以及分享资讯给尽可能多的相似物件;它适合用于只是因重复而导致使用无法令人接受的大量内存的大量物件。通常物件中的部分状态是可以分享。常见做法是把它们放在外部数据结构,当 阅读全文
posted @ 2017-07-27 15:33 重名 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 定义(百度百科):外观模式(Facade),为子系统中的一组接口提供一个一致的界面,定义一个高层接口,这个接口使得这一子系统更加容易使用。 UML类图: 具体代码: 模块说明:Facade: 客户端通过此角色能了解到子系统提供的功能,此角色会委派任务到相应的子系统中去 SubSystem: 子系统不 阅读全文
posted @ 2017-07-26 10:47 重名 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 定义(百度百科): 装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。 UML类图: 具体代码: 模块说明:Component:组件对象接口,可以动态的增加职责。ConcreteComponent:组件的具体对象,实现组件 阅读全文
posted @ 2017-07-24 18:04 重名 阅读(223) 评论(0) 推荐(0) 编辑