随笔分类 -  设计模式

摘要:在OO开发中,有很多编程的最佳实践,设计模式就是OO开发中的精华之一,在OO开发过程中有一些程序设计准则,我们根据这些编码准则可以写出易读、利于扩展的程序。下面是在阅读大话设计模式时做一个一个设计原则思维导图...... 阅读全文
posted @ 2012-09-05 10:05 gyzhao 阅读(388) 评论(0) 推荐(1) 编辑
摘要:策略模式(Strategy Pattern):定义了算法家族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化,不会影响到使用算法的客户。策略模式是一种定义了一系列算法的方法,从概念上来看,所以得这些算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有的算法,减少了各种算法类与使用算法类之间的耦合... 阅读全文
posted @ 2012-08-20 14:28 gyzhao 阅读(979) 评论(0) 推荐(2) 编辑
摘要:最近在看一些关于设计模式方面的知识,打算把学习过程给记录下来,进一步加深自己的理解。 从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(StaticFactory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是实由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。我是这么理解的:有一个创建工厂它可以生产各种不同的产品,例如:ipad、ipod、iphone、imac种产品(四个类),我们把这四个产品抽象成一个AppleProduct类,然后呢,把这三个产品类分别继... 阅读全文
posted @ 2012-03-06 16:12 gyzhao 阅读(621) 评论(1) 推荐(1) 编辑
摘要:观察者模式(Observer Pattern)有时又被称为订阅——发布模式,它主要应对这样的场景:需要将单一事件的通知(比如对象状态发生变化)广播给多个订阅者(观察者)。在这里我们通过C#的委托和事件来实现这一通用的模式。 现在我们来考虑一个温度控制器的例子。假设:一个加热器(Heater)和一个制冷器(Cooler)连接到同一个温度控制器(Thermostat)。温度控制器根据温度的变化通知给加热器(Heater)和制冷器(Cooler),二者根据温度来控制自己开关。 首先我们定义Heater类Heater 加热器类 1 class Heater 2 { 3 ... 阅读全文
posted @ 2012-01-17 14:35 gyzhao 阅读(3559) 评论(3) 推荐(8) 编辑