图解设计模式总览

第1部分 适应设计模式

  Iterator(迭代器) 模式-一个一个遍历

  Adapter(适配器) 模式-加个"适配器"模式以便于复用

第2部分 交给子类

  Template Method(模板方法) 模式-将具体处理交给子类

  Factory Method(工厂方法) 模式-将实例的生成交给子类  

第3部分 生成实例

  Singleton(单例) 模式-只有一个实例

  Prototype(原型) 模式-通过复制生成实例

  Builder(建造者) 模式-组装复杂的实例

  Abstract Factory(抽象工厂) 模式-将关联零件组装成产品

第4部分 分开考虑

  Brige(桥接) 模式-将类的功能层次结构与实现层次结构分离

  Strategy(策略) 模式-整体地替换算法

第5部分 一致性

  Composite(组合) 模式-容器与内容的一致性

  Decorator(装饰) 模式-装饰边框与被装饰物的一致性

第6部分 访问数据结构

  Visitor(访问者) 模式-访问数据结构并处理数据

  Chain of Responsibility(职责链) 模式-推卸责任

第7部分 简单化

  Facade(外观) 模式-简单窗口

  Mediator(中介者) 模式-只有一个仲裁者

第8部分 管理状态

  Observer(观察者) 模式-发送状态变化通知

  Memento(备忘录) 模式-保存对象状态

  State(状态) 模式-用类表示状态

第9部分 避免浪费

  Flyweight(享元) 模式-共享对象,避免浪费

  Proxy(代理) 模式-只在必要时生成实例

第10部分 用类来表现

  Command(命令) 模式-命令也是类

  Interpreter(解释器) 模式-语法规则也是类

时间: 2024-10-21 09:36:47

图解设计模式总览的相关文章

【图解设计模式】Mediator模式

组员向仲裁者报告,仲裁者向组员下达指示.组员之间不再相互询问和相互指示. 示例 一个GUI应用程序,它展示了一个登录对话框,用户在其中输入正确的用户名和密码后可以登录. 可以选择作为游客访问(Guest)或是作为用户登录(Login) 作为用户登录时,需要输入正确的用户名(Username)和密码(Password) 点击OK按钮可以登录,点击Cancel按钮可以取消登录 类图 时序图 Mediator接口 1234 public interface { public abstract void

二、设计模式总览及工厂模式详解

二.架构师内功心法之设计模式 2.架构师内功心法之设计模式 2.1.课程目标 1.通过对本章内容的学习,了解设计模式的由来. 2.介绍设计模式能帮我们解决哪些问题. 3.剖析工厂模式的历史由来及应用场景. 2.2.内容定位 不用设计模式并非不可以,但是用好设计模式能帮助我们更好地解决实际问题,设计模式最重要的 是解耦.设计模式天天都在用,但自己却无感知.我们把设计模式作为一个专题,主要是学习设计模式 是如何总结经验的,把经验为自己所用.学设计模式也是锻炼将业务需求转换技术实现的一种非常有效 的方

设计模式总览

面向过程通过划分功能模块和函数相互间的调用来实现一条条的业务流程,但需求变化时,就需要更改函数,被改动的函数有多少地方在调用它,关联多少数据是很不容易弄得清楚的,函数的修改极有可能引起不必要的BUG出现,维护和调试中所耗费的大多数时间不是在修改bug,而是在寻找bug--抱怨需求总是变化是没用的,改变开发过程才是王道,面向对象编程方式的诞生,就是为解决变化带来的问题. 面向对象封装可能会发生变化的区域,从而更容易的将代码与变化产生的影响隔离开来,显然,对象比流程更稳定,也更加封闭,由于面向对象设

图解设计模式之Adapter模式

什么是Adapter模式  Adapter模式即适配器模式,对于适配器的理解参考现实生活中把交流电转换成直流电的电源适配器,用于填补现有的程序和所需的程序之间差异的设计模式就是Adapter模式,有以下两种实现方式: 1. 类适配器模式(使用继承的适配器) 2. 对象适配器模式(使用委托的适配器)所谓继承和委托的区别在哪呢?委托是指将某个方法中的实际处理交给其他实例的方法,继承则是自己进行处理,下面分别看下两种实现方式: 代码清单 这里有一个需要被适配的Banner类 /** * 被适配角色:交

【设计模式】设计模式总览

设计模式 1. 创建型模式(6种) 创建对象时,不再由我们直接实例化对象:而是根据特定场景,由程序来确定创建对象的方式,从而保证更大的性能.更好的架构优势. 简单工厂模式(不是之一) 工厂方法模式 抽象工厂模式 原型模式 建造者模式 单例模式 2. 结构型模式(7种) 用于帮助将多个对象组织成更大的结构. 外观模式 适配器模式 代理模式 装饰模式 桥接模式 组合模式 享元模式 3.行为型模式(11种) 用于帮助系统间各对象的通信,以及如何控制复杂系统中流程. 模版方法模式 观察者模式 状态模式

设计模式-总览

1.什么是设计模式 设计模式是一套被反复使用的.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了重用代码.让代码更容易被他人理解.保证代码可靠性. 2.设计模式的种类 总共有 23 种设计模式.这些模式可以分为三大类: 创建型模式(Creational Patterns):这些设计模式关注对象的创建 工厂模式(Factory Pattern) 抽象工厂模式(Abstract Factory Pattern) 单例模式(Singleton Pattern) 建造者模式(Buil

图解设计模式

一.创建型: 二.结构型: (Adapter):适配器模式:类适配.实例适配.接口适配. (Decorator.Bridge.Proxy):装饰器.桥接.代理 注意比较装饰器和代理:装饰可以选择被装饰的对象,而代理则不能. (Facade.Composite.Flyweight):外观.组合.享元

图解设计模式-Iterator模式

使用抽象类和接口,弱化类之间的耦合,使类可以更容易组件化 不使用具体类编程,要优先使用抽象类和接口编程 角色划分: Iterator迭代器接口,定义遍历元素的接口,hasNext判断是否有下一个.next获得下一个值 ConcreteIterator:迭代器具体的实现类,实现了hasNext.next两个方法,需要根据具体的被迭代对象进行自定. Aggregate集合接口,包含了获得Iterator迭代器的方法 ConcreteAggregate集合的具体实现类,实现了了获得Iterator迭代

图解设计模式-Template Method模式

父类中定义处理流程,子类中实现具体处理的模式称为Template Method模式 优点: 可以保持逻辑处理通用化(父类中定义处理流程) 父类与子类之间协作(子类实现父类的抽象方法) 父类与子类保持一致性(子类继承父类) 延伸: 子类可以使用父类的方法 可以通过子类增加方法以实现新功能 子类重写父类的方法可以改变程序的行为 角色划分: AbstractClass抽象类:负责实现模块方法,还负责声明在模板方法中所使用到的抽象方法,这些抽象方法由子类负责实现. ConcreteClass具体类:实现