设计模式
chenquan_75
这个作者很懒,什么都没留下…
展开
-
深入浅出工厂模式
一、引子 话说十年前,有一个暴发户,他家有三辆汽车——Benz奔驰、Bmw宝马、Audi奥迪,还雇了司机为他开车。不过,暴发户坐车时总是怪怪的:上Benz车后跟司机说“开奔驰车!”,坐上Bmw后他说“开宝马车!”,坐上Audi说“开奥迪车!”。你一定说:这人有病!直接说开车不就行了?! 而当把这个暴发户的行为放到我们程序设计中来时,会发现这是一个普遍存在的现象。幸运的转载 2007-03-01 09:09:00 · 564 阅读 · 0 评论 -
.NET的反射工厂
.NET的反射工厂引言假设我们要创建一种交通工具,可以是汽车或者火车。结构如下图所示: 我们可以采用简单工厂,通过参数指定创建所需要的对象类型。但是,这样的缺点是:如果增加子类,例如卡车和轿车等,则必须增加参数和相应的代码。如果子类层次很多,则会使程序变得难以维护。如果用简单工厂实现上面的结构,则显然很烦琐。当然我们也可以用工厂方法来实现,即定义一个产生转载 2007-03-01 10:04:00 · 905 阅读 · 0 评论 -
设计模式C#描述——抽象工厂模式
阅读此文应先阅读简单工厂模式与工厂方法模式抽象工厂模式是对象的创建模式,它是工厂方法模式的进一步推广。假设一个子系统需要一些产品对象,而这些产品又属于一个以上的产品等级结构。那么为了将消费这些产品对象的责任和创建这些产品对象的责任分开,可以引进抽象工厂模式。这样的话,消费产品的客户不需要直接参与产品的创建工作,而只需要向一个公用的工厂接口请求所需要的产品。从上图可以看到,抽象工厂转载 2007-03-01 09:26:00 · 588 阅读 · 0 评论 -
简单工厂,工厂方法和抽象工厂模式 (转)
作者:罗鹏 Email:luopeng@ec.com.cn对于简单工厂来说,它的工厂只能是这个样子的public class SimplyFactory { /*** 静态工厂方法*/public static Prouct factory(String which) throw NoSuchProductExcption{ if(which.equalIgnoreCase("pr转载 2007-03-01 09:30:00 · 547 阅读 · 0 评论