定义一个统一接口,
2017-09-26 11:37:25
312
表示
2017-09-26 11:36:02
228
在基类中定义一套算法框架,子类只能更改特定的实现细节。
2017-09-26 11:34:29
255
封装不同的算法,使其独立于对象改变。
2017-09-26 11:32:51
222
定义状态量与行为的对应,当状态改变时,类对象的行为随着改变。
2017-09-26 11:30:59
245
定义类的全局唯一示例对象,带有作用域的全局类对象,采用static实现。
2017-09-26 11:28:28
171
为类提供另一个代理类,控制对该类的访问。
2017-09-26 11:26:26
193
通过copy原有的对象创建新的对象。类比clone()函数
2017-09-26 11:23:40
191
定义一个管理类(观察者),负责管理其他对某类状态感兴趣的对象(需注册及注销)。
2017-09-26 11:19:42
180
将不同的对象间交互封装到一个对象中,类似黑板或者交互平台。
2017-09-26 10:37:59
168
共享大量的细粒度对象
2017-09-26 10:28:42
271
定义一个单一创建接口,让子类实现不同对象的创建。典型示例:不同风格的界面外观定义
2017-09-26 10:25:01
265
将子系统中的不同接口封装成一个简单的接口,组合一组不同的子功能实现较复杂的功能接口。
2017-09-26 10:20:36
238
动态地给一个对象扩展功能,而不是通过子类继承。
2017-09-26 10:16:08
225
同一类型(基类、父类)的对象自由组合,不改变类型(基类、父类)。典型举例:界面类
2017-09-26 10:11:23
268
将一种请求封装成对象典型示例:撤销和恢复功能
2017-09-26 10:08:38
254
将一种响应(请求)通过一条彼此关联的处理类处理。一般遵照由小到大的粒度。典型的例子:界面帮助请求
2017-09-26 10:01:46
255
构建与样式(形式、表示)分离,一个构建逻辑对应不同的样式(形式、表示)。
2017-09-26 09:58:32
220
解耦,抽象接口与实现分离。
2017-09-26 09:54:25
217
将一个类接口封装成另一类接口。1.底层模块为上层模块提供接口,当底层模块改变时,不希望重新定义上层模块,在中间添加一层Adapter模块进行对接;2.不同的类适配到一个算法,例如:iterater
2017-09-26 09:44:56
205