摘要: 策略模式定义: 定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。策略模式解析: 策略模式是处理算法的不同变体的一种行为模式,通过在抽象策略中定义算法接口或封装算法标识,实现该抽象策略的具体子类成为一个单独的算法,即具体策略。策略模式使用多个类来区别不同的行为,使用策略模式避免暴露复杂的、与算法相关的内部数据结构。当一个类中的操作以多个条件分支语句的形式出现的时候,可以使用策略模式将相关的条件分支移入各自的具体策略类中以代替这些条件语句,从而减少系统处理的复杂度。 优点: 1、 提供了一种替代继承的方法,而且既保持了继... 阅读全文
posted @ 2012-11-03 13:32 venow 阅读(502) 评论(0) 推荐(0) 编辑
摘要: 发布/订阅模式定义: 又称为观察者模式,定义对象间的一种一对多的依赖关系,一个发布者可以对应多个订阅者,当发布者发生变化的时候,他可以将消息一一通知给所有的订阅者当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。发布/订阅模式解析: UML图如下,这里发布者IPublisher提供依赖于它的订阅者的添加add和删除remove操作,同时提供一个依赖于它的所有订阅者同步的操作notify。订阅者需要提供一个update操作,当发布者发出notify通知所有订阅者时,进行调用update。 简单代码示例如下://订阅者基类class ISubsc... 阅读全文
posted @ 2012-11-03 10:13 venow 阅读(9914) 评论(1) 推荐(0) 编辑