随笔分类 - 设计模式
1
摘要:1.定义 Iterator模式也叫迭代模式,是行为模式之一,它把对容器中包含的内部对象的访问委让给外部类,使用Iterator(遍历)按顺序进行遍历访问的设计模式。 2.
阅读全文
摘要:1.定义 Observer模式是行为模式之一,它的作用是当一个对象的状态发生变化时,能够自动通知其它关联对象,自动刷新对象状态。 Observer模式提供给关联对象一种同步通信的手段,使某个对象与依赖它的其他对象之间保持同步状态。 2.观察者模式的角色和职责 Subject(被观察者)--被观察的对
阅读全文
摘要:1.定义 Mediator模式也叫中介者模式,是由GOF提出的23种软件设计模式中的一种。Mediator模式是行为模式之一,在Mediator模式中,类之间的交互行为被统一放在Mediator的对象中,对象通过Mediator对象同其他对象交互,Mediator对象起着控制器的作用。 2.中介者模
阅读全文
摘要:1.定义 Command模式也叫命令模式,是行为设计模式的一种。Command模式通过被称为Command的类封装了对目标对象的调用行为以及调用参数。 2.命令模式的应用场景 在面向对象的程序设计中,一个对象调用另一个对象,一般情况下的调用过程是: 创建目标对象实例 设置调用参数 调用目标对象的方法
阅读全文
摘要:1.定义 Template Method模式也叫模板方法模式,是行为模式之一,它把具有特定步骤算法中的某些必要的处理委让给抽象方法,通过子类继承对抽象方法的不同实现改变整个算法的行为。 2.模板方法的应用场景 Template Method模式一般应用在具有以下条件的应用中: 具有统一的操作步骤或操
阅读全文
摘要:1.定义 Composite模式也叫组合模式,是构造型的设计模式之一。通过递归手段来构造树形的对象结构,并通过一个对象来访问整个对象树。 2.组合模式的结构 3.组合模式的角色和职责 Component(树形结构的节点抽象) 为所有的对象定义统一的接口(公共属性,行为等的定义) 提供管理子节点对象的
阅读全文
摘要:1.定义 Flyweight模式也叫享元模式,是结构型模式之一。它通过与其它类似对象共享数据来减少内存使用。 2.享元模式结构 3.享元模式的角色和职责 抽象享元角色:所有具体享元类的父类,规定一些需要实现的公共接口 具体享元角色:抽象享元角色的具体类,并实现了抽象享元角色规定的方法 享元工厂角色:
阅读全文
摘要:1.定义 装饰(Decorator)模式又叫做包装模式。通过一种对客户端透明的方式来扩展对象的功能,是继承关系的一个替换方案。 2.结构 3.装饰模式的角色和职责 抽象组件角色:一个抽象接口,是被装饰类和装饰类的父接口。 具体组件角色:为抽象组件的实现类。 抽象装饰角色:包含一个组件的引用,并定义了
阅读全文
摘要:1.定义 Bridge模式又叫做桥接模式,是构造型的设计模式之一。Bridge模式基于类的最小的设计原则,通过使用封装,聚合以及继承等行为来让不同的类承担不同的责任。它的主要特点是把抽象(abstraction)与行为实现(implementation)分离开来,从而可以保持各部分的独立性以及应对他
阅读全文
摘要:1.定义 Facade模式也叫外观模式,是由GOF提出的23中设计模式中的一种。Facade模式为一组具有类似功能的类群,比如类库,子系统等等,提供一个一致的简单的界面。这个一致的简单的界面被称作Facade。 2.外观模式的结构 3.外观模式的角色和职责 Facade--为调用方定义简单的调用接口
阅读全文
摘要:1.定义 Adapter模式也叫适配器模式,是构造型模式之一,通过Adapter模式可以改变已有类(或外部类)的接口形式。 2.适配器模式应用场景 在大规模的系统开发过程中,我们常常碰到诸如以下这些情况: 我们需要实现某些功能,这些功能已有还不成熟的一个或多个外部组件,如果我们自己重新开发这些功能会
阅读全文
摘要:1.定义 Proxy模式又叫做代理模式,是构造型的设计模式之一,它可以为其他对象提供一种代理以控制对这个对象的访问。 所谓代理,是指具有与代理元(被代理的对象)具有相同的接口的类,客户端必须通过代理与被代理的目标类交互,而代理一般在交互的过程中(交互前后),进行某些特别的处理。 2.代理模式的结构
阅读全文
摘要:1.定义 Prototype模式是一种对象创建型模式,它采取复制原型对象的方法来创建对象的实例。使用Prototype模式创建的实例,具有与原型一样的数据。 2.原型模式的特点 由原型对象自身创建目标对象。也就是说,对象创建这一动作发自原型对象本身。 目标对象是原型对象的一个克隆。也就是说,通过pr
阅读全文
摘要:1.定义 Builder模式也叫建造者模式或者生成器模式,是由GOF提出的23种设计模式中的一种。 Builder模式是一种对象创建型模式之一,用来隐藏复合对象的创建过程,它把复合对象的创建过程加以抽象,通过子类继承和重载的方式,动态地创建具有复合属性的对象。 2.结构图 3.应用场景 对象的创建:
阅读全文
摘要:1.定义 抽象工厂模式是所有形态的工厂模式最为抽象和最其一般性的。抽象工厂模式可以向客户端提供一个接口,使得客户端在不必指定产品的具体类型的情况下,能够创建多个产品族的产品对象。 2.产品族和产品等级结构 3.模式中包含的角色及其职责 抽象工厂角色(Creator)-- 抽象工厂模式的核心,包含对多
阅读全文
摘要:1.定义 工厂方法模式同样属于类的创建型模式又被称为多态工厂模式。工厂方法模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。核心工厂类不在负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,这样进一步抽象化的好处是使得工厂方法模式可以使系统在不修
阅读全文
摘要:1.定义 简单工厂模式属于类的创建型模式,又叫做静态工厂方法模式。通过专门定义一个接口来负责创建其他类的实例,被创建的实例通常都具有共同的父类。 2.模式中包含的角色及其职责 工厂(Creator)角色--简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类可以被外界直接调用,创建所需的产品
阅读全文
摘要:1.定义 Strategy模式也叫策略模式是行为模式之一,它对一系列的算法加以封装,为所有算法定义一个抽象的算法接口,并通过继承该抽象算法接口对所有的算法加以封装和实现,具体的算法选择交由客户端决定(策略)。Strategy模式主要用来平滑地处理算法的切换。 2.策略模式的结构 3.策略模式的角色和
阅读全文
摘要:1.定义 Memento模式也叫备忘录模式,是行为模式之一,它的作用是保存对象的内部状态,并在需要的时候(undo/rollback)恢复对象以前的状态。 2.应用场景 如果一个对象需要保存状态并可通过undo或rollback等操作恢复到以前的状态时,可以使用Memento模式。 一个类需要保存他
阅读全文
摘要:1.定义 单例模式是一种对象创建型模式,使用单例模式,可以保证为一个类只生成唯一的实例对象。也就是说,在整个程序空间中,该类只存在一个实例对象。 GOF对单例模式的定义是:保证一个类、只有一个实例存在,同时提供能对该实例加以访问的全局方法。 2.为什么要使用单例模式? 在开发中,经常有如下需求: 在
阅读全文
1

浙公网安备 33010602011771号