摘要:
访问者模式:提供一个作用于某对象结构(通常是一个对象集合)的操作的接口,使得在添加新的操作或者在添加新的元素时,不需要修改原有系统,就可以对各个对象进行操作。 阅读全文
2016年11月27日
摘要:
模板方法模式:定义一个操作中算法的框架,并且将一部分操作延迟到子类当中。使得子类可以不改变一个算法的结构即可重新定义算法步骤。 阅读全文
2016年11月26日
摘要:
策略模式:定义一系列的算法,将每一个算法封装起来,并使它们之间可以相互替换,让算法具有可扩展性和对立性。 阅读全文
2016年11月24日
摘要:
定义:当一个对象有多个状态,并且在每个状态下有不同的行为,可以使用状态模式来在其内部改变状态时改变其行为,而客户端不会察觉状态的改变,仍使用同样的方法或接口与对象进行交互。 阅读全文
2016年11月23日
摘要:
观察者模式:定义对象之间一种一对多的关系,当被观察者状态变化时,可以自动地通知观察者并执行相关的业务操作。 阅读全文
2016年11月20日
摘要:
备忘录模式:在不破坏原有封装的情况下,捕获一个对象的内部状态,并在对象之外保存。当对象出错或者无效是,可以根据该备忘录进行恢复。 阅读全文
摘要:
中介者模式:用一个中介对象(中介者)来封装一系列的对象交互,使各个对象之间不需要显式地相互引用,从而降低耦合度,而且可以独立地改变他们之间的交互关系。 阅读全文
2016年11月19日
摘要:
迭代器模式:提供一种方法来访问聚合对象,而不用暴露这个对象的内部表示。使得存储和遍历两个职责相互分离,提高系统的可扩展性。 阅读全文
2016年11月17日
摘要:
解释器模式:定义一个语言的文法,可以使用一个解释器来解释其文法。定义终结符和非终结符的统一接口,并使用抽象对象建立非终结符与其它元素的关联。 阅读全文
摘要:
命令模式:将一个请求封装成对象,使得请求发送者和请求接受者之间相互隔离,消除两者之间的耦合。引入命令类,使得不同请求对客户参数化,并且可以对命令添加附件操作,如:排队、撤销、日志、组合等。 阅读全文