当前位置:文档之家› 设计模式学习系列之UML图

设计模式学习系列之UML图

设计模式学习系列之UML图(结构型模式)一。

适配器
二。

桥梁模式
三。

装饰模式
四。

合成模式
五。

门面模式
六。

享元模式
七。

代理模式
设计模式学习系列之UML图(行为型模式上)一。

模板方法
二。

命令模式
三。

迭代器模式
四。

策略模式
五。

职责链模式
六。

访问者模式
7、备忘录模式
8、解释器模式
9、调停者模式
① Mediator: 定义了与colleague对象交互的接口,通常被告知事件或者状态
② concreteMediator:实现与colleague交互的具体行为,了解和维护colleagues
③ colleague:每个colleague知道自己的Mediator对象,每个colleague当其需要与其他colleague交互时需要先与自己的mediator进行交互,为mediator提供了服务,colleague可能请求相同也可能不同
10、S tate—状态模式
状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况。

把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化
11、O bserver—观察者模式
观察者模式(Observer)完美的将观察者和被观察的对象分离开。

举个例子,用户界面可以作为一个观察者,业务数据是被观察者,用户界面观察业务数据的变化,发现数据变化后,就显示在界面上。

面向对象设计的一个原则是:系统中的每个类将重点放在某一个功能上,而不是其他方面。

一个对象只做一件事情,并且将他做好。

观察者模式在模块之间划定了清晰的界限,提高了应用程序的可维护性和重用性。

创建型模式) 设计模式学习系列之 UML 图(创建型模式)
通过类图理解设计模式比较直观,以下是五种创建型模式的结构: 一、Singleton


二、FactoryMethod


核心工厂类不再负责所有产品的创建, 而是将具体创建的工作交给子类去做, 成为一个抽象 工厂角色, 仅负责给出具体工厂类必须实现的接口, 而不接触哪一个产品类应当被实例化这 种细节
三、AbstractFactory


客户类和工厂类分开。

消费者任何时候需要某种产品,只需向工厂请求即可。

消费者无须修 改就可以接纳新产品。

缺点是当产品修改时,工厂类也要做相应的修改。

如:如何创建及如 何向客户端提供
四、Builder


将产品的内部表象和产品的 生成过程分割开来, 从而使一个建造过程生成具有不同的内部表象的产品对象。

建造模式使 得产品内部表象可以独立的变化, 客户不必知道产品内部组成的细节。

建造模式可以强制实 行一种分步骤进行的建造过程
五、Prototype


通过给出一个原型对象来指明所 要创建的对象的类型, 然后用复制这个原型对象的方法创建出更多同类型的对象。

原始模型 模式允许动态的增加或减少产品类, 产品类不需要非得有任何事先确定的等级结构, 原始模 型模式适用于任何的等级结构。

缺点是每一个类都必须配备一个克隆方法
推荐学习资料:/zhenyulu/category/6930.html 补充: 类之间的关系和 UML 类图表示: 关联:类之间的一种比较明显的关系,在问题领域中通过分析可以得出。

(分单向,双向,自身 关联)


例如:老师教学生,水壶装水 依赖:一种弱关联,一个类用到另一个类,但是和另一个类的关系不是太明显的时候。

例如:我和杯子,本来是没关系的,用它来喝水的时候就形成了依赖关系。

聚合/组合:类之间的整体-部分关系 聚合:部分可以离开整体而独立存在 例如:大雁和雁群 组合:部分不可以离开整体而独立存在 例如:鸟和翅膀 泛化:继承关系


GoF 的23种经典设计模式汇总 种经典设计模式汇总——创建型模式篇 种经典设计模式汇总 创建型模式篇
创建型模式
1,抽象工厂模式(abstract factory) ,抽象工厂模式


UML 图
2,生成器模式(builder) ,生成器模式 UML 图


3,工厂方法模式(factory method) ,工厂方法模式 UML 图
4,原型模式(prototype) ,原型模式 UML 图


5,单件模式(singleton) ,单件模式 UML 图



















相关主题