07 2010 档案

摘要:* 职责链模式:使多个对象都有机会处理请求,从而避免发送的请求者和处理者的耦合关系。将对象炼成一个条 * 并延这个链处理请求,知道一个对象处理他为止 * * 图例: * * 客户端不需要知道具体哪个处理类处理了这个请求,只要提交就可以,提交请求后请求就会延着职责链 * 一直运行,直到碰到处理他的具体类为止 * * 也简化了职责链上具体类的关系,各个具体来更关注自己的处理逻辑,只需要指定一个继任的具体类就可以 * 而且可以随时随意的在职责链上添加或者删除新的具体处理类,更灵活 * * 需要注意的事,一个请求可能到了职责链的末端也没有具体处理类,这可能是因为配置错误,或者业务逻辑错误 * ... 阅读全文
posted @ 2010-07-14 19:06 音乐啤酒 阅读(198) 评论(0) 推荐(0) 编辑
摘要:组合模式:将对象组合成树形结构以表示“部分-整体”的层次关系。组合模式使得用户对单个对象和组合对象具有一致性使用组合模式的场景:当需求中体现部分和整体层次的结构时候,希望用户可以忽略组合对象和当对象的不同,统一的使用组合结构中的所有对象的时候,就应该考虑组合模式。组合模式可以让用户无差别的时候组合结构和单个对象。图示:/// <summary> /// component为组合中的对象声明接口,在适当的情况下,实现所有类共有接口的默认行为 /// 声明一个接口用于访问和管理component的子部件 /// </summary> public abstract clas 阅读全文
posted @ 2010-07-12 01:21 音乐啤酒 阅读(200) 评论(0) 推荐(0) 编辑
摘要:建造者模式定义:将一个复杂对象的构建与他的表示分离,使得同样的构建过程可以创建不同的表示使用建造者模式用户只需要指定建造者的具体类型 就可以得到他们,而不需知道具体的生成过程和构建细节。这个模式主要用于创建复杂的对象,这些对象内部的构造顺序通常是稳定的,但是对象内部的构造通常比较复杂图示;个人理解:使用建造者模式一般是这样的一种情况,某个复杂对象他的创建过程是稳定,创建步骤是一定,有具体的流程。比如创建人这个对象,必须会创建头,手,脚灯,或者构建汽车,肯定会有轮胎,框架,颜色等等。这些复杂对象他们的创建步骤是必须的,而且每个步骤是不能省略的,但是这个步骤又是复杂,所以可以把这些必须的步骤封装起 阅读全文
posted @ 2010-07-09 19:20 音乐啤酒 阅读(293) 评论(0) 推荐(0) 编辑
摘要:观察者模式:定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发送变化的时候会通知所有的观察者对象,是他们能够自动更新自己。观察者模式的特点和应用场景:当一个对象的改变需要同时改变其他对象的时候,而且他不知道具体有多少对象有待改变,应该考虑使用观察者模式一个抽象模型有两个方面,其中一个方面依赖于另一方面,这是用观察者模式可以将两者封装在独立的对象中是他们各自独立的改变和复用观察者模式的工作其实就是接触耦合,让耦合的双方都依赖于抽象而不是依赖具体。从而使得各自的变化都不会影响另一边的变化代码图示插图Subject:抽象类,将所有对观察者的引用都保存在一个集合中 阅读全文
posted @ 2010-07-04 03:11 音乐啤酒 阅读(259) 评论(0) 推荐(0) 编辑
摘要:from 大话设计模式模板方法设计模式:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法可以使得子类不修改算法结构即可重新定义该算法的特定步骤。图示:AbstractClass是一个抽象类,他其中的TemplateMethod定义了方法的算法骨架,primitiveOpertion1和2。算法骨架中的用到的部分操作步骤,这些操作步骤是抽象方法,推迟到子类中来实现,这样骨架算法没有变化,算法中的部分操作方法会被子类修改。concreteClass是具体类,重写abstractClass中的primitiveOperation方法,这样达到了修改骨架算法中部分操作方法的目的代码示例p 阅读全文
posted @ 2010-07-01 22:56 音乐啤酒 阅读(319) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示