设计模式是为程序代码优化而诞生的,目的是设计出易维护、容易拓展、易复用、灵活性好的程序。设计模式体现是面向对象的三大思想:封装、继承和多态。设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化;设计...
分类:
其他好文 时间:
2014-06-07 01:29:07
阅读次数:
257
1 设计一个基类
2 继承这个基类,并包含这个基类的一个对象
3 创建继承类的时候,初始化这个基类,因为是基类指针,所以可以是所有基类的衍生类对象,那么就可以叠加任意多个衍生类对象了。
关键是在衍生类中包含一个基类对象,然后有了继承和包含两重关系,可以使得一个类一个类对象叠加,达到装饰目的。
等于是创建了一个对象指针链表,一个一个对象发挥其相应的作用。
下面程序装饰一个桌...
分类:
其他好文 时间:
2014-06-05 06:15:17
阅读次数:
278
观察者模式是最常用的设计模式之一,【对象之间多对一的依赖关系,当一个对象发生变化时,其会通知所有依赖它的对象】。拿订阅报纸和发行报社打比方,报社采集到news制作新的报纸,派送给订阅的客户,以此把最新的消息告知客户。所以,
出版社 + 订阅者 = 观察者模式。
这种一对多的关系,也即“一个”主题、“多个”观察者能够使得观察者仅仅了解主题推送的消息但不知晓其中的细节,而主题握有观察者列表...
分类:
其他好文 时间:
2014-06-02 23:33:05
阅读次数:
376
Spy on enemy.
使用这个模式可以根据某些事件自动更新。
设计思路:
1 设计一个基类,作为需要观察一个时间行为的接口类
2 设计一个观察者类,可以观察所有基类的衍生类, 这里使用set来保存这些需要更新的类。
一个事件相当于一个函数,事件发生(调用函数)同时自动调用需要更新的函数动作。
#pragma once
#include
#include
#inclu...
分类:
其他好文 时间:
2014-05-26 06:16:49
阅读次数:
284
访问者模式(Visitor
Pattern)是GoF提出的23种设计模式中的一种,属于行为模式。定义(源于GoF《Design
Pattern》):表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作。从定义可以看出结构对象是使用访问者模式必备条件,...
分类:
其他好文 时间:
2014-05-23 10:23:03
阅读次数:
220
一、Singleton,单例模式:保证一个类只有一个实例,并提供一个访问它的全局访问点
二、AbstractFactory,抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们的具体类。 三、Factory
Method,工厂方法:定义一个用于创建对象的接口,让子类决定实例化哪一.....
分类:
其他好文 时间:
2014-05-22 00:19:43
阅读次数:
278
摘要 设计模式(Design
pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。
毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化;设计模式是软件工程的基石脉络,如...
分类:
其他好文 时间:
2014-05-21 17:19:21
阅读次数:
278
近段时间发现自己越来越懒了,老师早就讲过的东西,一直没有总结!百度了一下,给的答案是设计模式总共23种。简单工厂属于其中一种,而单例模式并不是其中一种。今天总结下使用这两种模式写的项目。设计模式:设计模式(Design
pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总...
分类:
其他好文 时间:
2014-05-19 16:30:58
阅读次数:
303