桥接

桥接

意图

将抽象部分与它的实现部分分离,使它们都可以独立地变化。

动机

当一个抽象可能有多个实现时,通常用继承来协调它们,抽象类定义对该抽象的接口,而具体的子类则用不同方式加以实现。但是此方法有时不够灵活。继承机制将抽象部分与它的实现部分固定在一起,使得难以对抽象部分和实现部分独立第进行修改、扩充和重用。 例如不同操作平台下涉及到不同的平台依赖实现,客户在创建爱你窗口时应该不涉及到具体实现部分。仅仅是窗口的实现部分依赖于应用运行的平台。这样客户代码在创建窗口时就不涉及到特定的平台。Bridge模式将Window抽象和它的实现部分分别放在独立的类层次结构中。其中一个类层次结构针对窗口接口,另一个独立的类层次结构针对平台相关的窗口实现部分。

适用性

  • 不希望在抽象和它的实现部分之间有一个固定的绑定关系。

  • 类的抽象以及它的实现都应该可以通过生成子类的方法加以扩充。

  • 对一个抽象的实现部分的修改应该对客户不产生影响,即客户的代码不必冲洗编译。

  • 你想对客户完全隐藏抽象的实现部分。

  • 你想在多个对象间共享实现,单同时要求客户并不知道这一点。

效果

  1. 分离接口及其部分实现。

  2. 提高可扩充性

  3. 实现鞋机对客户透明

实现

注意事项

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值