设计模式 C#
文章平均质量分 80
KevinGiant
2015转数据库了
展开
-
设计模式(三)[策略(Strategy)模式]
一、 策略(Strategy)模式 策略模式的用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。(符合开放-封闭原则) 假设现在要设计一个贩卖各类书籍的电子商务网站的购物车(Shopping Cat)系统。一个最简单的情况就是把所有货品的单价乘上数量,但是实际情况肯定比这要复杂。比如,转载 2007-06-18 09:24:00 · 992 阅读 · 0 评论 -
设计模式(四)[装饰(Decorator)模式]
一、 装饰(Decorator)模式装饰(Decorator)模式又名包装(Wrapper)模式[GOF95]。装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案。引言孙悟空有七十二般变化,他的每一种变化都给他带来一种附加的本领。他变成鱼儿时,就可以到水里游泳;他变成雀儿时,就可以在天上飞行。而不管悟空怎么变化,在二郎神眼里,他永远是那只猢狲。装饰模式以对客转载 2007-06-19 09:28:00 · 995 阅读 · 0 评论 -
开放-封闭的原则
一、OCP简介(OCP--Open-Closed Principle): Software entities(classes,modules,functions,etc.) should be open for extension, but closed for modification。 软件实体应当对扩展开放,对修改关闭,即软件实体应当在不修改(在.Net当中可能通过代理模转载 2007-06-18 08:53:00 · 934 阅读 · 0 评论 -
设计模式(六)[观察者(Observer)模式]
一、 观察者(Observer)模式观察者模式又叫做发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-监听器(Source/Listener)模式或从属者(Dependents)模式。观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使它们能够自动更新自己。转载 2007-06-20 09:37:00 · 11923 阅读 · 1 评论 -
设计模式(二)[抽象工厂(Abstract Factory)模式]
一、 抽象工厂(Abstract Factory)模式抽象工厂模式是所有形态的工厂模式中最为抽象和最具一般性的一种形态。为了方便引进抽象工厂模式,引进一个新概念:产品族(Product Family)。所谓产品族,是指位于不同产品等级结构,功能相关联的产品组成的家族。如图: 图中一共有四个产品族,分布于三个不同的产品等级结构中。只要指明一个产品所处的产品族以及它所属的等级结构,就可转载 2007-06-15 14:57:00 · 981 阅读 · 0 评论 -
设计模式(一)[桥接(Bridge)模式]
一、 桥接(Bridge)模式桥接模式是一个非常有用的模式,也是比较复杂的一个模式。熟悉这个模式对于理解面向对象的设计原则,包括"开-闭"原则(OCP)以及组合/聚合复用原则(CARP)都很有帮助。理解好这两个原则,有助于形成正确的设计思想和培养良好的设计风格。注:《Java与模式》一书认为Bridge模式不是一个使用频率很高的模式,我不太赞同,我认为Bridge模式中蕴涵了很多设计模式的转载 2007-06-14 16:07:00 · 847 阅读 · 0 评论 -
设计模式(九)[简单工厂(Simple Factory)模式]
工厂模式专门负责将大量有共同接口的类实例化。工厂模式可以动态决定将哪一个类实例化,不必事先知道每次要实例化哪一个类。工厂模式有以下几种形态: 简单工厂(Simple Factory)模式 工厂方法(Factory Method)模式 抽象工厂(Abstract Factory)模式 一、 简单工厂(Simple Factory)模式Simple转载 2007-06-21 10:06:00 · 967 阅读 · 0 评论 -
设计模式(七)[模板方法(Template Method)模式]
一、 模板方法(Template Method)模式准备一个抽象类,将部分逻辑以具体方法以及具体构造子的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。这就是模版方法模式的用意。很多人可能没有想到,模版方法模式实际上是所有模式中最为常见的几个模式之一,而且很多人可能使用过模版方法模式而没有意识到自己已经使用了转载 2007-06-20 10:38:00 · 1100 阅读 · 0 评论 -
设计模式(八)[工厂方法(Factory Method)模式]
一、 工厂方法(Factory Method)模式工厂方法(FactoryMethod)模式是类的创建模式,其用意是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类中。工厂方法模式是简单工厂模式的进一步抽象和推广。由于使用了多态性,工厂方法模式保持了简单工厂模式的优点,而且克服了它的缺点。在工厂方法模式中,核心的工厂类不再负责所有产品的创建,而是将具体创建工作交给子类去做。这个转载 2007-06-21 09:45:00 · 804 阅读 · 0 评论 -
设计模式(五)[单件(Singleton)模式]
一、 单件(Singleton)模式单件模式的特点: 单件类只能有一个实例。 单件类必须自己创建自己的唯一实例。 单件类必须给所有其它对象提供这一实例。 单件模式应用: 每台计算机可以有若干个打印机,但只能有一个Printer Spooler,避免两个打印作业同时输出到打印机。 一个具有自动编号主键的表可以有多个用户同时使转载 2007-06-19 10:14:00 · 1331 阅读 · 0 评论