设计模式学习--(学习资料:TerryLee's blog)
2008-09-03 11:09
609 查看
最近看了TerryLee's blog的一些关于设计模式的系列,从中学习到了很多。(http://terrylee.cnblogs.com/archive/2005/12/13/295965.html) ,做些笔记方便查询。
1、单件模式(Single Pattern)
public class CountSigleton
{
///存储唯一的实例
static CountSigleton uniCounter = new CountSigleton();
///存储计数值
private int totNum = 0;
private CountSigleton()
{
///线程延迟2000毫秒
Thread.Sleep(2000);
}
static public CountSigleton Instance()
{
return uniCounter;
}
///计数加1
public void Add()
{
totNum ++;
}
///获得当前计数值
public int GetCounter()
{
return totNum;
}
}
适合:单个实例(seal class 貌似没写)
2、抽象工厂模式(Abstract Factory)
这个没怎么懂,不过感觉反射创建工厂模式貌似更加优秀些
3、建造者模式
(引用)
1、建造者模式主要用于“分步骤构建一个复杂的对象”,在这其中“分步骤”是一个稳定的算法,而复杂对象的各个部分则经常变化。
2、产品不需要抽象类,特别是由于创建对象的算法复杂而导致使用此模式的情况下或者此模式应用于产品的生成过程,其最终结果可能差异很大,不大可能提炼出一个抽象产品类。
3、创建者中的创建子部件的接口方法不是抽象方法而是空方法,不进行任何操作,具体的创建者只需要覆盖需要的方法就可以,但是这也不是绝对的,特别是类似文本转换这种情况下,缺省的方法将输入原封不动的输出是合理的缺省操作。
4、前面我们说过的抽象工厂模式(Abtract Factory)解决“系列对象”的需求变化,Builder模式解决“对象部分”的需求变化,建造者模式常和组合模式(Composite Pattern)结合使用。
继续中。。
1、单件模式(Single Pattern)
public class CountSigleton
{
///存储唯一的实例
static CountSigleton uniCounter = new CountSigleton();
///存储计数值
private int totNum = 0;
private CountSigleton()
{
///线程延迟2000毫秒
Thread.Sleep(2000);
}
static public CountSigleton Instance()
{
return uniCounter;
}
///计数加1
public void Add()
{
totNum ++;
}
///获得当前计数值
public int GetCounter()
{
return totNum;
}
}
适合:单个实例(seal class 貌似没写)
2、抽象工厂模式(Abstract Factory)
这个没怎么懂,不过感觉反射创建工厂模式貌似更加优秀些
3、建造者模式
(引用)
1、建造者模式主要用于“分步骤构建一个复杂的对象”,在这其中“分步骤”是一个稳定的算法,而复杂对象的各个部分则经常变化。
2、产品不需要抽象类,特别是由于创建对象的算法复杂而导致使用此模式的情况下或者此模式应用于产品的生成过程,其最终结果可能差异很大,不大可能提炼出一个抽象产品类。
3、创建者中的创建子部件的接口方法不是抽象方法而是空方法,不进行任何操作,具体的创建者只需要覆盖需要的方法就可以,但是这也不是绝对的,特别是类似文本转换这种情况下,缺省的方法将输入原封不动的输出是合理的缺省操作。
4、前面我们说过的抽象工厂模式(Abtract Factory)解决“系列对象”的需求变化,Builder模式解决“对象部分”的需求变化,建造者模式常和组合模式(Composite Pattern)结合使用。
继续中。。
相关文章推荐
- 设计模式学习笔记:What's 设计模式?
- java设计模式的学习资料
- 《Orange's 一个操作系统的实现》学习笔记--保护模式理论初步(二)
- <C/C++ 版> 设计模式 学习之 策略模式+工厂模式
- C#设计模式学习资料--原型模式
- JavaSE学习总结第27天_反射 & 设计模式 & JDK5、7、8新特性
- 重点推荐:设计模式学习资料
- 设计模式学习系列笔记(builder&nbs…
- 在线的免费Markdown编辑器 'MaHua'-(麻花) & MarkDown学习资料
- 设计模式 学习资料总结
- 《Orange's 一个操作系统的实现》学习笔记--实践认识保护模式
- Java 设计模式学习-单例模式&工厂模式
- 《Orange's 一个操作系统的实现》学习笔记--保护模式理论初步(一)
- [置顶] 设计模式学习资料推荐
- <C/C++ 版> 设计模式 学习之 工厂模式 <2>
- C#设计模式学习资料--模版方式模式
- java设计模式学习资料汇总
- 设计模式学习笔记之 ( B…
- <C/C++ 版> 设计模式 学习之 工厂模式 <1>
- 关于整理出的设计模式系列各方面学习资料