摘要: 策略模式定义了一系列的算法,并将每一个算法封装起来,让它们之间可以相互替换。 策略模式让算法的变化不影响到使用算法的客户。 环境类(Context):用一个ConcreteStrategy对象来配置,维护一个对Strategy对象的引用。可定义一个接口来让Strategy访问它的数据。 抽象策略类( 阅读全文
posted @ 2016-09-30 16:47 池塘ddjyds 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。 状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况。把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化。 上下文环境(Context):它定义了客户程序需要的接口并维护一个具体状态角色的实 阅读全文
posted @ 2016-09-30 16:38 池塘ddjyds 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 又名发布-订阅(Publish/Subscribe)模式、模型-视图(View)模式、源-收听者(Listener)模式或从属者模式; 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。当主题对象在状态发生变化时,会通知其所有观察者对象/依赖者对象,使它们能够自动更新自己 阅读全文
posted @ 2016-09-30 16:31 池塘ddjyds 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 在不破坏封闭的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 备忘录模式主要思想是——利用备忘录对象来对保存发起人的内部状态,当发起人需要恢复原来状态时,再从备忘录对象中进行获取,在实际开发过程也应用到这点,例如数据库中的事务处理。 1.Ori 阅读全文
posted @ 2016-09-30 16:16 池塘ddjyds 阅读(150) 评论(0) 推荐(0) 编辑