设计模式
皮小猪的时光
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
观察者模式
观察者模式又称作:Model/View模式、发布/订阅模式。观察者模式讲求的是:当“对象”(被观察者)发生变化的时候,观察者能够收到来自“对象”的通知,并作出相应改变。整个模式给人的感觉就像是,观察者一直在观察”对象“。模式定义观察者模式:定义对象间的一种一对多依赖关系,使得每当一个对象状态(目标)发生改变时,其相关依赖对象(观察者)皆得到通知并被自动更新。UML图: 代码解析1 简单版首先给原创 2016-02-21 14:18:34 · 1818 阅读 · 0 评论 -
策略模式
一件事情要做成,往往有多种方法。比如一个专业3个班级,每个班级都是30人,要计算整个专业的人数,对于这个问题,我们既可以用加法也可以用乘法完成。 策略模式针对的就是这种情况:一个问题多种解法(策略)。 简介/* 策略模式*/#ifndef _STRATEGY_#define _STRATEGY_#define NULL 0//抽象基类class Cash{public原创 2016-03-02 18:09:48 · 1827 阅读 · 0 评论 -
状态模式
在很多情况下,一个对象的行为取决于一个或多个动态变化的属性,这样的属性叫做状态,这样的对象叫做有状态的(stateful)对象。模式定义 当一个对象的内在状态改变时,允许其改变行为(不同的状态,做不同的事)。状态模式主要解决的是 : 当控制一个对象状态转换的条件表达式过于复杂时的情况。把状态的判断逻辑,转移到表示不同状态的一系列类当中,可以把复杂的判断逻辑简化。UML图如下: 示例 人假原创 2016-03-09 16:24:42 · 1726 阅读 · 0 评论 -
单例模式
- 对于系统中的某些类来说,只有一个实例很重要,例如,一个系统中可以存在多个打印任务,但是只能有一个正在工作的任务;一个系统只能有一个窗口管理器或文件系统;一个系统只能有一个计时工具或ID(序号)生成器。- 如何保证一个类只有一个实例并且这个实例易于被访问呢?定义一个全局变量可以确保对象随时都可以被访问,但不能防止我们实例化多个对象。- 一个更好的解决办法是让类自身负责保存它的唯一实例。这个类可以保原创 2016-02-20 16:18:35 · 1910 阅读 · 0 评论 -
简单工厂模式
工厂模式,顾名思义,这种模式的工作方式类似于工厂。工厂包含多个车间,各个车间生产不同的产品,客户向工厂提交不同的需求,工厂都能根据客户的需求提交产品。模式定义简单工厂模式:又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。在简单工厂模式中,可以根据参数的不同返回不同类的实例。简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。原创 2016-02-28 22:17:06 · 1607 阅读 · 0 评论
分享