前提 介绍这么模式之前,我们首先来看看它的类图。 根据这个图我们来分析一下何为命令模式。首先就是我们的 Client 想要实现一个功能,于是它就...
装饰者模式动态地将责任附加到对象身上。若要拓展功能,装饰者提供了比继承更有弹性的替代方案。 用过 QQ 的人都知道, 它有很多特权服务,比如说 ...
组合模式 : 允许你将对象组合成树形结构来表现 "整体/部分" 层次结构。组合能够让我们用一致的方式处理个别对象以及对象集合。 先来看一张图 图...
迭代器模式: 提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示。 比如说,现在我们有两个聚合对象,一个是数组,一个是 Arr...
学校里有个十分可爱的女孩子,很多男孩都纷纷加入了她的粉丝行列,大家争先恐后的去搜集她的信息。这个时候女孩的室友,同学都开始向她抱怨,她也深感愧疚...
下面,将通过一个例子,对职责链模式进行介绍。 问题:设想,你有一个呼叫中心,员工分成三个层级,接线员,主管和经理。客户来电时会先分配给接线员,若...
在介绍享元模式之前,先来看一个问题。假设要你去做一款扑克牌游戏,你会针对扑克牌设计一种怎样的数据结构呢? 因为扑克牌有四种花色,也即红桃(Hea...
适配器模式 什么是适配器模式呢?比如说客户端中需要一个Sort() 函数,它可以实现简单的排序功能,但是这个时候,我们发现我们之前曾经写过这个函...
建造者模式 建造者模式就是一步一步的创建一个复杂的对象,而且允许用户指定复杂对象的类型和内容。 Builder 类是一个抽象类,用于定义一些创建...
文集作者