设计模式
DeepMinder
山野草民
展开
-
访问者模式-Visitor Patern(转-吕震宇)
、 访问者(Visitor)模式访问者模式的目的是封装一些施加于某种数据结构元素之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构则可以保持不变。问题提出System.Collection命名空间下提供了大量集合操作对象。但大多数情况下处理的都是同类对象的聚集。换言之,在聚集上采取的操作都是一些针对同类型对象的同类操作。但是如果针对一个保存有不同类型对象的聚集采取某种操作该怎转载 2007-07-08 15:24:00 · 1832 阅读 · 0 评论 -
观察者模式-Observer Patern(转-吕震宇)
一、 观察者(Observer)模式观察者模式又叫做发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-监听器(Source/Listener)模式或从属者(Dependents)模式。观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使它们能够自动更新自己。转载 2007-07-08 15:26:00 · 1846 阅读 · 0 评论 -
门面模式-Facade(转-吕震宇)
一、 门面(Facade)模式外部与一个子系统的通信必须通过一个统一的门面(Facade)对象进行,这就是门面模式。医院的例子用一个例子进行说明,如果把医院作为一个子系统,按照部门职能,这个系统可以划分为挂号、门诊、划价、化验、收费、取药等。看病的病人要与这些部门打交道,就如同一个子系统的客户端与一个子系统的各个类打交道一样,不是一件容易的事情。首先病人必须先挂号,然后门诊。如果医转载 2007-07-08 15:37:00 · 1704 阅读 · 0 评论 -
门面模式-Facade Patern(转-吕震宇)
一、 门面(Facade)模式外部与一个子系统的通信必须通过一个统一的门面(Facade)对象进行,这就是门面模式。医院的例子用一个例子进行说明,如果把医院作为一个子系统,按照部门职能,这个系统可以划分为挂号、门诊、划价、化验、收费、取药等。看病的病人要与这些部门打交道,就如同一个子系统的客户端与一个子系统的各个类打交道一样,不是一件容易的事情。首先病人必须先挂号,然后门诊。如果医转载 2007-07-08 15:40:00 · 1649 阅读 · 0 评论 -
命令模式-Command Patern(转-吕震宇)
、 命令(Command)模式命令(Command)模式属于对象的行为模式【GOF95】。命令模式又称为行动(Action)模式或交易(Transaction)模式。命令模式把一个请求或者操作封装到一个对象中。命令模式允许系统使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。命令模式是对命令的封装。命令模式把发出命令的责任和执行命令的责任分割开,委派给转载 2007-07-08 15:28:00 · 1712 阅读 · 0 评论 -
行为模式/责任链模式--Chain of Responsibility Patern(转-吕震宇)
行为模式(Behavioral Pattern)是对在不同的对象之间划分责任和算法的抽象化。行为模式不仅仅是关于类和对象的,而且是关于它们之间的相互作用的。行为模式分为类的行为模式和对象的行为模式两种。 类的行为模式:类的行为模式使用继承关系在几个类之问分配行为。 对象的行为模式:对象的行为模式则使用对象的聚合来分配行为。在后面将要介绍的行为模式包括以下几种:转载 2007-07-08 15:31:00 · 1883 阅读 · 0 评论 -
策略模式-Strategy Paggern(转-吕震宇)
一、 策略(Strategy)模式策略模式的用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。假设现在要设计一个贩卖各类书籍的电子商务网站的购物车(Shopping Cat)系统。一个最简单的情况就是把所有货品的单价乘上数量,但是实际情况肯定比这要复杂。比如,本网站可能对所有的教材类图书实行每本一转载 2007-07-08 15:19:00 · 1815 阅读 · 0 评论 -
模板方法模式-Template Method Patern(转-吕震宇)
、 模板方法(Template Method)模式准备一个抽象类,将部分逻辑以具体方法以及具体构造子的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。这就是模版方法模式的用意。很多人可能没有想到,模版方法模式实际上是所有模式中最为常见的几个模式之一,而且很多人可能使用过模版方法模式而没有意识到自己已经使用了转载 2007-07-08 15:22:00 · 1768 阅读 · 0 评论 -
依赖注入模块Unity 简介(转)
微软企业库4.1学习笔记(四十一)依赖注入模块Unity 简介 模块Unity是一个轻量的、可扩展的依赖注入容器,支持构造函数注入、属性注入、方法调用注入。你可以用它创建企业库对象,也可以创建自定义的业务对象。Unity和企业库中的其他模块有一些不同点: 你可以独立的使用Unity模块来实现依赖注入技术,不需要其他模块的辅助。 Unity支持用配置转载 2012-07-02 23:33:04 · 5094 阅读 · 0 评论