摘要:NULL Object空对象模式:当你在处理可能会出现null的对象时,可能要产生相对乏味的代码来做相应的处理,使用空对象模式可以接受null,并返回相应的信息。 空对象模式通常会作为一个单独的空对象类,封装一个默认的行为。usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceNullObjectPattern{publicinterfaceINullable{boolIsNull{get;}}publicinterfaceIUser:INullable{voidLogin.
阅读全文
文章分类 - Java与模式笔记
摘要:0. 引言使用过SDK的朋友应该知道“回调函数”(callback function)这个概念,但本文并不是介绍如何使用回调函数,而是站在SDK开发者的角度,讲述如何实现回调机制。1. 何为回调(callback)所谓回调,就是客户程序C调用服务程序S中的某个函数A,然后S又在某个时候反过来调用C中的某个函数B,对于C来说,这个B便叫做回调函数。例如Win32下的窗口过程函...
阅读全文
摘要:一个好的用户界面(GUI)的设计通常可以在现实世界找到相应的表现。例如,如果在您的面前摆放着一个类似于电脑键盘按键的一个简单的按钮,然而就是这么简单的一个按钮,我们就可以看出一个GUI设计的规则,它由两个主要的部分构成,一部分使得它具有了按钮应该具有的动作特性,例如可以被按下。另外一部分则负责它的表现,例如这个按钮是代表了A还是B。看清楚这两点你就发现了一个很强大的设计方法,这种方法鼓励重用reu...
阅读全文
摘要:Memento模式也叫备忘录模式,是由GoF提出的23种软件设计模式的一种。Memento模式是行为模式之一,它的作用是保存对象的内部状态,并在需要的时候(undo/rollback)恢复对象以前的状态。 本文介绍设计模式中的(Memento)模式的概念,用法,以及实际应用中怎么样使用Memento模式进行开发。 ...
阅读全文
摘要:转自:http://blog.csdn.net/WillLee312/archive/2009/08/15/4450265.aspx命令(Command) 声明:本文可用于个人学习、参考,未经本人授权严禁用于商业用途。有朋友转载或引用本文请注明作者和出处,谢谢!! 1 模式简介 经理:喂,小丽呀,这儿有封信,请帮我尽快寄出去… 秘书:好的,经理,我马上去办! 秘书拿着这封信,到一家邮...
阅读全文
摘要:Template Method模式也叫模板方法模式,是由GoF提出的23种设计模式中的一种。Template Method模式是行为模式之一,它把具有特定步骤算法中的某些必要的处理委让给抽象方法,通过子类继承对抽象方法的不同实现改变整个算法的行为。 本文介绍设计模式中的模板方法(Template Method)模式的概念,用法,以及实际应用中怎么样使用Template Method模式进行开发。...
阅读全文
摘要:Bridge模式也叫桥接模式,是由GoF提出的23种软件设计模式的一种。Bridge模式在调用方与被调用方之间使用一个起着“桥”作用的类,用来支持类的多方向扩展。 Bridge模式体现了两上面向对象的设计原则问题:一、接口隔离原则 使用多个接口总比使用一个接口要好很多,(灵活)二、合成/聚合原则 即尽量使用使用组合/聚合比而不要使用继承。本文介绍设计模式中的桥接(Bridg...
阅读全文
摘要:Strategy模式也叫策略模式,是由GoF提出的23种软件设计模式的一种。 Strategy模式是行为模式之一,它对一系列的算法加以封装,为所有算法定义一个抽象的算法接口,并通过继承该抽象算法接口对所有的算法加以封装和实 现,具体的算法选择交由客户端决定(策略)。Strategy模式主要用来平滑地处理算法的切换。 本文介绍设计模式中的(Strategy)模式的概念,用法,以及实际应用中怎么样使用...
阅读全文
摘要:第二部分 面向对象的设计原则 1、面向对象的设计要解决的核心问题是如何同时提高软件的可维护性(Maintainability)和可复用性(Reuseability)(LY注:关键难在同时,因为软件的可维护性和可复用性有时并不一致) 2、在孤立的设计模式的背后应当还有一些普遍性的设计指导原则。比如“开闭”原则,它们是隐藏在设计模式背后的,比设计模式本身更基本和单纯的设计思想。...
阅读全文

浙公网安备 33010602011771号