Builder 生成器(创建型模式)
摘要:Builder模式的起因: 假设创建游戏中的一个房屋House设施,该房屋的构建由几个部分组成,且各个部分要富于变化。如:房子是由“2门,4窗,4墙,1天花板,1地板”构成,门,窗,墙,天花板,地板可以变化成不同的门,窗,墙,天花板,地板,但构成房子是由2个门,4个窗,4个墙,1个天花板,1个地板是不变的。把变化的与不变的隔离开来,就是Builder模式。动机(Motivation) 在软...
阅读全文
posted @
2006-02-18 22:43
蝈蝈
阅读(534)
推荐(0)
Abstract Factory 抽象工厂模式(创建型模式)
摘要: 在软件系统中,经常面临着“一系列相互依赖的对象”的创建工作;同时,由于需求的变化往往存在“更多系列对象”的创建工作。
如何应对这种变化?如何绕过常规的对象创建方法(new),提供一种“封装机制”来避免客户程序和这种多系列具体对象创建工作的紧密耦合?
阅读全文
posted @
2006-02-11 15:50
蝈蝈
阅读(505)
推荐(0)
面向对象设计模式概述
摘要:一、面向对象三大机制: 封装:隐藏内部实现 继承:复用现有代码 多态:改写对象行为二、面向对象设计模式: 面向对象设计模式解决的是类与相互通信的对象之间的组织关系。三、面向对象设计原则: 针对接口编程,而不是针对实现编程 优先使用对象组合,而不是类继承 封装变化点四、具体的设计原则: 单一职责原则(SRP):一个类应该仅有一个引起它变化的原因 ...
阅读全文
posted @
2006-02-10 21:42
蝈蝈
阅读(617)
推荐(0)
Singleton 单件(创建型模式)
摘要:一、动机(Motivation) 在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一个实例,才能确保它们的逻辑正确性以及良好的效率。 如何绕过常规的构造器,提供一种机制来保证一个类只有一个类例?这应该是类的设计者的责任,而不是类的使用者。二、意图(Intent) 保证一个类仅有一个实例,并提供一个该实例的全局访问点。三、C#语言实现1)单线程Singleton模式实...
阅读全文
posted @
2006-02-10 20:45
蝈蝈
阅读(991)
推荐(0)