建造者模式(Builder),又叫生成器模式。建造者模式可以将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象。如果我们用了建造者模式,那么用户就只需指定需要建造的类型就可以得到它们,而具体建造的过程和细节就不需要知道了。 建造者模式将一个复杂对象....
分类:
其他好文 时间:
2015-09-08 18:06:51
阅读次数:
171
原型模式(Prototype),用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 原型模式其实就是从一个对象再创建另外一个可定制的对象,而且不需要知道任何创建的细节。 .NET在System命名空间中提供了ICloneable接口,其中就是唯一的一个方法Clone(),这样只需...
分类:
其他好文 时间:
2015-09-08 16:42:35
阅读次数:
125
《大话设计模式》这是一本经典之作,本来我该看《Objective-C编程之道:IOS设计模式解析 》,其实我也是先看的《Objective-C编程之道:IOS设计模式解析 》,但不得不说,其中内容有些深奥,理解起来比较困难。这与我一贯的学习方针不合,我更喜欢一个循序渐进的过程,从认知到实践再到思维上...
分类:
移动开发 时间:
2015-09-08 13:51:02
阅读次数:
336
《大话设计模式》简单工厂模式的实现,用VS2010的MFC实现程序。客户端界面如下:客户端的实现如下: 1 void CFactoryDesignDemoDlg::OnBnClickedOk() 2 { 3 // TODO: 在此添加控件通知处理程序代码 4 UpdateData(t...
分类:
其他好文 时间:
2015-09-06 21:35:18
阅读次数:
174
state = $value; } } public function __get($param) { if ($param == 'state') { return $this->state; } } publ...
分类:
其他好文 时间:
2015-09-02 21:58:39
阅读次数:
177
_adaptee = new Adaptee(); } public function request() { $this->_adaptee->special_request(); }}$target = new Adapter();$target->request...
分类:
其他好文 时间:
2015-09-02 17:15:43
阅读次数:
155
抽象工厂模式(Abstract Factory),提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类。 以下给出抽象工厂方法模式的UML图: 回到《大话设计模式》里面的双数据库访问的例子:namespace ConsoleApplication1{ class ...
分类:
其他好文 时间:
2015-09-02 11:53:28
阅读次数:
182
"; $context->state = new Concrete_state_B(); }}class Concrete_state_B extends State { public function handle(Context $context) { e...
分类:
其他好文 时间:
2015-09-01 20:02:36
阅读次数:
227
书上原版的是C#代码我比较熟悉java,写的是java代码。package sampleFactory;public class Operation { protected double _numberA = 0; protected double _numberB = 0; pr...
分类:
其他好文 时间:
2015-09-01 16:51:42
阅读次数:
271
前言 这几天回顾了《大话设计模式》,发现看类图的时候分不清了,为了加强记忆,也方便回顾,自己手动画了一次类图,并参考了网上文章将此作为笔记,记录下来。类图共三层: 1、类名,如果是抽象类为类名为斜体。 2、特性,字段和属性 3、操作,方法,+是公共(Publish)、-是私有(Private...
分类:
其他好文 时间:
2015-09-01 12:28:58
阅读次数:
234