2011年1月26日
摘要: 模块方法模式主要是用在超类与子类之间关系之中。模块方法模式定义:在一个方法中定义一个算法的骨架,而将以一些方法实现推迟到子类中。模块方法使得子类可以不改变算法结构的情况下,重新定义算法中的某些方法。具体的说:模板就是一个方法,这个方法将算法定义成一组步骤,其中任何步骤都可以是抽象的,由子类负责实现。这可以确保算法的结构保持不变,同事由子类提供部分方法实现。[代码] public abstract class CoffeeTeaWithHook { public string PrepareRecipe() { StringBuilder sb = new StringBuilder(); sb 阅读全文
posted @ 2011-01-26 16:32 jackdesk 阅读(638) 评论(0) 推荐(0) 编辑
摘要: 外观模式主要是用来简化统一个很大的接口或者一群复杂的接口。外观模式定义:提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统很容易使用.(深入浅出设计模式)外观模式不只是简化了接口,也将客户从组件的子系统中解耦。外观模式实现代码:[代码] public class WatchTv { string channel; public WatchTv(string channel) { this.channel = channel; } public string TvOn() { return "Tv is on " + channel; } public strin 阅读全文
posted @ 2011-01-26 14:06 jackdesk 阅读(749) 评论(0) 推荐(0) 编辑
摘要: 适配器模式就相当于一个翻译,来处理两个人语言之间的障碍。下面文字来源于深入浅出设计模式,进一步了解什么是适配器模假设有一个系统,你希望他能和一个新的厂商类库搭配使用起来,但是新的厂商所设计的接口不同于旧常桑的接口,你不想改变现有的代码,解决这个问题(而且你也不能改变厂商的代码)。所以该怎么办呢这个嘛,你可以写一个类,将新厂商的 接口转接成你所期望的接口这个适配器工作起来就如同一个中间商,他将客户所发出的请求转换成厂商类能够理解的请求实现代码:现有系统代码:[代码] public interface Duck { string Quack(); string Fly(); } //绿头鸭子类 p 阅读全文
posted @ 2011-01-26 12:47 jackdesk 阅读(127) 评论(0) 推荐(0) 编辑