自.net 2.0出世时,Provider模式就随处可见了,如:MembershipProvider、SiteMapProvider等,
它的出现使我们的应用程序有了更大的扩展性,可以是一个数据工...

[继续阅读.net中的Provider模式]

photo.

[继续阅读装饰者模式]

意图:
将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。

photo


Target
定义一个目标接口,可以是一个接口也可以是一个抽象类.
Adapter
适配器类,它要实现目标接口且维护一个被适配对象的实例.
Adaptee
被适配对象
Client
客户端调用
很典型的例子就是笔记本电脑的电源...

[继续阅读适配器模式]

定义:
提供一个统一的接口去访问多个子系统的多个不同的接口。外观模式定义了一个高层次的接口,使得子系统更容易被使用。

UML示意图
photo

外观类
1、知道哪些子系统,知道处理哪些请求
2、将客户的请求传递给子系统处理

子系统类
1、实现了子系统的功能
2、处理由外观类传过来的任务
3、子系统无需知道外观类,在任何地方也没有引用外观类。

现实中的例子:
  我们去餐厅吃饭,只需将菜单传...

[继续阅读外观模式]

责任链模式属于行为型设计模式中的一种。
责任链模式避免将发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并沿着这条链传递请求,直到有对象处理为止。

photo.

[继续阅读[设计模式]责任链模式]

Strategy策略模式是属于设计模式中对象行为型模式,主要是定义一系列的算法,把这些算法一个个封装成单独的类.
它的UML图

photo
Strategy是一个策略类,其中定义一个或多个算法接口
ConcreteStrategy是实现算法接口的具体策略类
Context是上下文应用

比如,我要从龙阳路去浦东国际机场,我可以选择坐公交、可以选择打车、可以选择坐磁悬浮。
这里的乘车方式就是一...

[继续阅读策略模式]

GOF设计模式其中之一,observer也称观察者模式。 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 UML图: Subject,所有被观察者的基类,该类可定义为抽象的,或干脆提升为interface。 Attach方法是附加一个观察者,Detach方法是移除一个观察者 Notify方法将自动通告所有观察者,在上图中就是 foreach o in observers   o.Update() Observer,所有观察者的基类,该类可定义为抽象,或定义为interface。 Conc...

[继续阅读Observer模式]

[img]http://www.dofactory.com/Images/boxcs1.gif[/img].

[继续阅读Design Patterns]