Bridge 模式是模式里面最难理解同时也是功能非常强大的一个模式, 下面我们就来谈一谈它的核心思想适用场合欢迎有兴趣的同行一起探讨补充。
设计模式一书中原话描述这一模式: 将抽象与其实现解耦,使它们可以独立的适应变化。
Bridge 模式要解决的问题是: 当一个抽象有不同实现的时候,它可以使抽象和实现相互独立的进行变化。
适用场合: 对业务逻辑进行分析找到变化的部分放在各自的抽象类中,在分析这些抽象类之间的关系,使其能够做到相互独立的类中包含变化,从而使未来发生变化的部分很小程度的或者不影响当前的代码。
简单理解该模式由一个抽象(包括其派生类)和一个实现组成。
看一个具体一点的例子:
比如说常见的画图实现
public abstract class Shape {
protected AbstractDrawing myDrawing;
abstract public void draw();
Shape(AbstractDrawing drawing)
{
this.myDrawing = drawing;
}
protected void drawLine(double x1, double y1, double x2, double y2)
{
myDrawing.drawLine(x1, y1, x2, y2);
}
protected void drawCircle(double x, double y, double r)
{
myDrawing.drawCircle(x, y, r);
}
}
public abstract class AbstractDrawing {
abstract public void drawLine(double x1, double y1, double x2, double y2);
abstract public void drawCircle(double x, double y, double r);
}
- 大小: 6.7 KB
- 大小: 52.6 KB
分享到:
相关推荐
设计模式(16)-Bridge.pdf
2.1 Bridge模式........................................................................................................................33 2.2 Adapter模式...................................................
设计模式精解-GoF 23 种设计模式解析附 C++实现源码 目 录 引 言 0.1 设计模式解析(总序) 0.2 设计模式解析后记 0.3 与作者联系 1 创建型模式 1.1 Factory模式 1.2 AbstactFactory模式 1.3 Singleton...
设计模式(16)-Bridge Pattern 设计模式(15)-Facade Pattern 设计模式(14)-Flyweight Pattern C#设计模式(13)-Proxy Pattern C#设计模式(12)-Decorator Pattern C#设计模式(11)-Composite Pattern ...
1.1 什么是设计模式 2 1.2 Smalltalk MVC 中的设计模式 3 1.3 描述设计模式 4 1.4 设计模式的编目 5 1.5 组织编目 7 1.6 设计模式怎样解决设计问题 8 1.6.1 寻找合适的对象 8 1.6.2 决定对象的粒度 9 1.6.3 指定对象...
2.1 Bridge模式........................................................................................................................26 2.2 Adapter模式..................................................
设计模式之我见(1):设计模式概述 (100%) 设计模式面面观(2):设计模式基本要素与原则 (100%) 设计模式面面观(3):单件模式(Singletion)-创建型模式 (100%) 设计模式面面观(4):工厂模式...
本书从一个新的视角描述面向对象设计,将面向中对象编程的原则与运用设计模式力量创建健壮、可靠的软件开发环境结合起来。书中采用实用、恰当的例子,指导读者用模式解决普通的编程问题,并且解释现代软件设计模式的...
72 第8章 开拓视野 82 第9章 Strategy模式 98 第10章 Bridge模式 113 第11章 Abstract Factory模式 138 第12章 专家设计之道 154 第13章 用模式解决CAD/CAM问题 162 第五部分 迈向新的设计方式 第14章 设计模式的...
设计模式之Bridge 设计模式之Flyweight(享元) 行为模式: 设计模式之Template 设计模式之Memento(备忘机制) 设计模式之Observer 设计模式之Chain of Responsibility(职责链) 设计模式之Command 设计模式之State 设计...
1.2 Smalltalk MVC中的设计模式 1.3 描述设计模式 1.4 设计模式的编目 1.5 组织编目 1.6 设计模式怎样解决设计问题 1.7 怎样选择设计模式 1.8 怎样使用设计模式 第二章 实例研究:设计一个文档编辑器 2.1 设计问题...
Bridge模式是对抽象和具体的进一步抽象。假设你有一个抽象类,一个具体类,现在需要将两者的变化都考虑进去,这就需要bridge。这是经典设计模式中唯一的可以同时处理抽象和具体同时变化的设计模式
2.1 Bridge模式........................................................................................................................33 2.2 Adapter模式..................................................
36种最新设计模式整理 Design Pattern: Simple Factory 模式 Design Pattern: Abstract Factory 模式 Design Pattern: Builder 模式 Design Pattern: Factory Method 模式 Design Pattern: Prototype 模式 ...
2.1 Bridge模式........................................................................................................................26 2.2 Adapter模式...................................................
设计模式C++学习之桥梁模式(Bridge)
至于第14章则很快地浏览尚未介绍的设计模式,包括Bridge、Builder、Chain of Responsibility、Flyweight、Interpreter、Mediator、Memento、Prototype,Visitor。第1章还介绍了四个○○基本概念(抽象、封装、继承、...
针对设计模式中的 bridge 模式,做了一个小例子,希望对设计模式研究的朋友有所帮助。
设计模式之Bridge 设计模式之Flyweight(享元) 行为模式: 设计模式之Template 设计模式之Memento(备忘机制) 设计模式之Observer 设计模式之Chain of Responsibility(职责链) 设计模式之Command 设计模式之State 设计...
软件设计模式,共包含二十多种模式,做IT的必备知识呀!