跟小D每日学口语
摘要: 摘要: 由于出差,又接近年关,最近一段时间一直没有更新这个设计模式初学者系列,一定要坚持下去,坚持就是胜利。 策略模式有三种参与者: 一、 Context 这个类保存了对策略的引用,并且调用实际的策略实现,有可能还提供一个接口,让策略可以访问它内部的数据,在这里就是我们的“高校”类。 二、 Strategy 策略接口,给算法族定义一个通用的接口,让客户以一种一致的方法去访问。(I教务处... 阅读全文
posted @ 2008-06-13 11:41 honour 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 摘要: 在我们的开发中会经常碰到这样的情况:根据对象的状态执行相应的操作,比如数据库连接的状态 打开,还是关闭?TCP连接的状态(Gof DP),设备运行的状态,等等。一般我们会怎么做?首先向对象询问当前状态,然后根据状态做出相应的操作。OK,按照这个思路我们就来完成下面这个项目吧。 阅读全文横刀天笑 2008-01-18 09:23 发表评论文章来源:http://www.cnbl... 阅读全文
posted @ 2008-06-13 11:41 honour 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 摘要: 看到代理(Proxy),首先映入大脑中的肯定是网络上为数众多的代理服务器。我们的客户机由于各种原因,不能直接连接到真正的服务器、直接访问速度慢,有的应用中甚至在代理服务器上作权限的访问控制。大部分代理... 阅读全文横刀天笑 2008-02-18 15:48 发表评论文章来源:http://www.cnblogs.com/yuyijq/archive/2008/02/18/10... 阅读全文
posted @ 2008-06-13 11:41 honour 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 摘要: 继上次设计模式初学者系列后好长时间没有更新了,好不容易休息几天,如是搬来一块砖,放在首页,希望能够引来一些玉。 设计模式理论上是不管部署环境的,我觉得她是一个代码设计层面上的东西,但是在WinForm里实现的很好的模式,移植到Web环境往往有各种各样的局限性, 今天我们要讨论的就是在asp.net中如何去实现一个观察者模式。 阅读全文横刀天笑 2008-05-02 14:30... 阅读全文
posted @ 2008-06-13 11:41 honour 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 摘要: 写完这个Post后本来想把完整代码实现传上来,后来看到不少园友提出异议,看了大家的留言后我也一直在思索:我为什么这样做?当初我是怎样想到这个解决方案的?我在几个解决方案之间做了取舍了么?我... 阅读全文横刀天笑 2008-05-06 02:00 发表评论文章来源:http://www.cnblogs.com/yuyijq/archive/2008/05/06/1184335... 阅读全文
posted @ 2008-06-13 11:41 honour 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 摘要: 观察者模式定义了对象之间一对多的依赖,当这个对象的状态发生改变的时候,多个对象会接受到通知,有机会做出反馈。在运行的时刻可以动态的添加和删除观察者。 在今天的设计模式系列中我给大家带来了观察者模式,首先我会以一个生动的故事引入观察者模式的应用的场景,然后描述这个场景中出现的问题,最后我们提出观察者模式的解决方案,并给出C#语言实现的代码,最后以.net里的委托-事件方式的观察者... 阅读全文
posted @ 2008-06-13 11:41 honour 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 摘要: 闲谈工厂方法 设计模式系列到了第四篇了,如果还不谈谈工厂方法设计模式就太对不起GoF了,为什么有如此一说?实际上工厂方法模式是好些模式的基石,她们或多或少的使用了工厂方法模式或以工厂方法为模型。 工厂方法模式是一种类创建型模式,她为创建一个对象提供了一个稳定的接口,而将对象创建的真正工作推迟到其子类实现,工厂方法允许将类的初始化工作延迟到子类,让子类决定实例化哪... 阅读全文
posted @ 2008-06-13 11:41 honour 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 摘要: 模板方法属于行为型设计模式,行为型设计模式主要关注对象之间职责分配和算法的问题。类行为型模式使用继承来分配类之间的职责,模板方法就是个类行为型模式。对象行为型模式使用组合来分配职责。在我们构建软件的过程中大部分时候我们都是在思考实体之间的职责,怎样的职责分配最合理,不至于过重,又不至于过轻,而且又不越权。 模板方法Gof的定义是:在一个方法里定义算法的骨架,将一些... 阅读全文
posted @ 2008-06-13 11:41 honour 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 摘要: 在一个系统中,往往有一些服务只需要它们在整个系统中存在一个实例,并且在系统的任何角落都可以访问它。这样,单件模式出现了。比如在上一篇抽象工厂模式中,在一个系统中往往只有一个工厂,这样我们可以引入单件模式来解决这个问题。 对于单件模式的定义是:只允许系统中有一个实例存在,并且为该实例提供一个全局的访问点 阅读全文横刀天笑 2007-10-07 12:04 发表评论文章来源:h... 阅读全文
posted @ 2008-06-13 11:41 honour 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 摘要: 抽象工厂模式的使用场景 今天要谈的抽象工厂模式属于对象创建型模式。 创建型模式抽象了对象实例化的过程,它帮助系统不依赖于对象如何创建,如何实现,何时创建。个类创建型模式使用继承使对象创建多样化,一个对象创建模式将对象的创建代理到其他类。 那抽象工厂模式是为了解决什么问题的呢?给了我们怎样的设计思路?在软件开发中我们经常会碰到一系列相关的对象需要创建,如... 阅读全文
posted @ 2008-06-13 11:41 honour 阅读(68) 评论(0) 推荐(0) 编辑