logo头像

Aoho's Blog

设计模式

设计模式之外观模式

1. 概述外观模式通过外观的包装,使复杂的系统对外只能看到外观对象,而不会看到具体的细节对象,为子系统中的一组接口提供了一个统一的访问接口,这个接口使得子系统更容易被访问或者使用。 这样无疑会降低应用程序的复杂度,并且提高了程序的可维...

设计模式之备忘录模式

设计模式之备忘录模式属于行为型设计模式。 备忘录模式的定义在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 备忘录模式的结构备忘录模式中的角色对象: 发起者对象O...

设计模式之建造者模式

1. 名词解释 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 比如一台电脑包括主机、显示器、键盘等外设,这些部件组成了完整的一台电脑。如何将这些部件组装成一台完整的电脑并返回给用户,这是建造者模式需要解...

设计模式之代理模式

代理模式属于结构性模式。 代理模式的定义代理模式为其他对象提供一种代理以控制对这个对象的访问。从定义可以知道代理模式控制客户端对一个对象的访问,它跟现实中的中介代理类似,只是作为代表做一些受理工作,真正执行的并不是它自己。 代理模式的...

设计模式之单例模式

上一篇写了23种设计模式总览,本文主要介绍创建模式中的单例模式,日常工作中也会有经常用到。 1. 定义首先,什么是单例模式?单例模式有以下特点: 从字面就可以理解,单例类只能有一个实例。 单例类必须自己创建自己的唯一实例。 单例类必...

设计模式之线程池模式

背景Thread-Per-Message Pattern,是一种对于每个命令或请求,都分配一个线程,由这个线程执行工作。它将委托消息的一端和执行消息的一端用两个不同的线程来实现。该线程模式主要包括三个部分: Request参与者(委...

设计模式之装饰器模式

装饰器模式属于结构型模式。 装饰器模式的定义装饰模式可以动态的给一个对象增加一些额外的功能(增强功能) 相比于继承,装饰模式能对不支持继承的类进行增强;并且比继承更灵活,不需要生成大量的子类。 装饰器模式的组成装饰器模式的类图如下: ...

设计模式之抽象工厂模式

工厂模式属于创建型模式。 工厂模式的定义工厂模式包括:简单工厂,工厂方法,抽象工厂三种。本文介绍前两种。 目的:松耦合,不针对具体类。 作用:减少应用程序与具体类的依赖,实现松耦合。针对抽象编程,不针对具体类编程。 在上一篇设计模...

设计模式之工厂模式

工厂模式属于创建型模式。 工厂模式的定义工厂模式包括:简单工厂,工厂方法,抽象工厂三种。本文介绍前两种。 目的:松耦合,不针对具体类。 作用:减少应用程序与具体类的依赖,实现松耦合。针对抽象编程,不针对具体类编程。简单工厂模式 简...

设计模式之适配器模式

适配器模式属于结构型模式。 适配器模式的定义适配器模式将某个类的接口转换成客户端期望的另一个接口表示,目的是兼容性,让原本因接口不匹配的两个类可以协同工作,其别名为包装器(Wrapper)。 最典型的例子就是很多功能手机,每一种机型都...