摘要: InterpreterTemplate Method Chain of ResponsibilityCommandIteratorMediatorMementoObserverStateStrategyVisitor 名称Interpreter结构 意图给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。适用性当有一个语言需要解释执行, 并且你可将该语言中的句子表示为一个抽象语法树时,可使用解释器模式。而当存在以下情况时该模式效果最好: 该文法简单对于复杂的文法, 文法的类层次变得庞大而无法管理。此时语法分析程序生成器这样的工具是更好的选择。它们无需 阅读全文
posted @ 2011-07-14 18:35 似水流年-johnhuo 阅读(552) 评论(0) 推荐(0) 编辑
摘要: 名称Adapter结构意图将一个类的接口转换成客户希望的另外一个接口。A d a p t e r 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。适用性你想使用一个已经存在的类,而它的接口不符合你的需求。 你想创建一个可以复用的类,该类可以与其他不相关的类或不可预见的类(即那些接口可能不一定兼容的类)协同工作。 (仅适用于对象A d a p t e r )你想使用一些已经存在的子类,但是不可能对每一个都进行子类化以匹配它们的接口。对象适配器可以适配它的父类接口。 Code Examplenamespace Adapter_DesignPattern{ using System; 阅读全文
posted @ 2011-07-14 18:25 似水流年-johnhuo 阅读(424) 评论(0) 推荐(0) 编辑
摘要: 为了方便阅读,我把一篇设计模式的资料拆分开发,分为三个大的部分,如下:Factory Abstract FactoryBuilderPrototypeSingleton 名称Factory Method结构意图定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method 使一个类的实例化延迟到其子类。适用性当一个类不知道它所必须创建的对象的类的时候。 当一个类希望由它的子类来指定它所创建的对象的时候。 当类将创建对象的职责委托给多个帮助子类中的某一个,并且你希望将哪一个帮助子类是代理者这一信息局部化的时候。 Code Examplenamespace FactoryMet 阅读全文
posted @ 2011-07-14 18:20 似水流年-johnhuo 阅读(681) 评论(0) 推荐(1) 编辑
摘要: 者当前正在负责研究所中一个项目,这个项目基于.NET平台,初步拟采用C/S部署体系,所以选择了Windows Forms作为其UI。经过几此迭代,我们发现了一个问题:虽然业务逻辑已经封装到Services层中,但诸多的UI逻辑仍然弥漫在各个事件 Listener中,使得UI显得臃肿不堪,并且存在诸多重复性代码。另外,需求提供方说,根据实际需要,不排除将部署结构改为B/S的可能性,甚至可能 会要求此系统同时支持C/S和B/S两种部署方式。那么,如果保持目前将UI逻辑编码到Windows Forms中的方式,到时这些UI逻辑将无法复用,修改部署方式的代价很大。 为了解决以上两个问题,笔者和相关人员 阅读全文
posted @ 2011-07-14 15:57 似水流年-johnhuo 阅读(604) 评论(1) 推荐(0) 编辑