23种设计模式之桥接模式(Bridge)
2017-04-10 15:43
316 查看
桥接模式将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接口(Interface)模式。桥接模式类似于多重继承方案,但是多重继承方案往往违背了类得单一职责原则,其复用性比较差,桥接模式是比多重继承方案更好的解决方法。
优点:
1)可以将接口与实现相分离。
2)提高了可扩展性。
3)对客户端隐藏了实现的细节。
使用场景:
1)想避免在抽象及其实现之间存在永久的绑定。
2)抽象及其实现可以使用子类进行扩展。
3)抽象的实现被改动应该对客户端没有影响,不用重新编译代码。
![](http://img.my.csdn.net/uploads/201209/05/1346810449_3933.jpg)
Bridge 模式
优点:
1)可以将接口与实现相分离。
2)提高了可扩展性。
3)对客户端隐藏了实现的细节。
使用场景:
1)想避免在抽象及其实现之间存在永久的绑定。
2)抽象及其实现可以使用子类进行扩展。
3)抽象的实现被改动应该对客户端没有影响,不用重新编译代码。
![](http://img.my.csdn.net/uploads/201209/05/1346810449_3933.jpg)
Bridge 模式
/// <summary> /// 像素矩阵类 /// </summary> public class Matrix { } public abstract class Image { public void SetImp(ImageImp imp) { this.imp = imp; } public abstract void ParseFile(string fileName); protected ImageImp imp; } public abstract class ImageImp { public abstract void doPaint(Matrix m);//显示像素矩阵m }
public class WinImp:ImageImp { public override void doPaint(Matrix m) { //调用windows系统的绘制函数绘制像素矩阵 } } public class LinuxImp:ImageImp { public override void doPaint(Matrix m) { //调用Linux系统的绘制函数绘制像素矩阵 } }
public class JPEG:Image { public override void ParseFile(string fileName) { Matrix m = new Matrix();//此处解析BMP文件并获得一个像素矩阵对象m imp.doPaint(m); } } public class BMP : Image { public override void ParseFile(string fileName) { Matrix m = new Matrix();//此处解析BMP文件并获得一个像素矩阵对象m imp.doPaint(m); } } public class GIF:Image { public override void ParseFile(string fileName) { Matrix m = new Matrix();//此处解析BMP文件并获得一个像素矩阵对象m imp.doPaint(m); } }
相关文章推荐
- 23种设计模式09---桥接(Bridge)模式
- 23种设计模式(7)_结构型_桥接模式(Bridge Pattern)
- 23种设计模式之桥接模式(Bridge)
- 【结构型模式】桥接模式(Bridge)之23种java设计模式
- java23种设计模式--桥接模式(bridge)
- 23种设计模式-6.桥接模式(Bridge Pattern)
- Java23种设计模式案例:桥接模式(bridge)
- 【Unity3D与23种设计模式】桥接模式(Bridge)
- Java开发中的23种设计模式详解----桥接模式(Bridge)
- java 23种常用设计模式之桥接模式(Bridge)
- 设计模式循序渐进(1)桥接模式 Bridge
- [导入]C#面向对象设计模式纵横谈之7.Bridge 桥接模式
- 设计模式学习笔记(八)——Bridge桥接模式
- 设计模式--桥接模式(Bridge)
- 设计模式--桥接模式(Bridge)
- 设计模式之桥接模式(Bridge)
- 设计模式笔记--结构型模式之二--桥接 Bridge
- 设计模式学习笔记(四)—Bridge桥接模式
- 设计模式学习笔记--Bridge桥接模式
- 设计模式 Bridge 桥接模式