软件秘笈-设计模式那点事_第8章 开关与电灯:桥接模式.pdfVIP

  • 0
  • 0
  • 约1.79千字
  • 约 12页
  • 2019-10-13 发布于湖北
  • 举报

软件秘笈-设计模式那点事_第8章 开关与电灯:桥接模式.pdf

软件秘籍:设计模式那点事儿 第8章开关与电灯:桥接模式 第8章开关与电灯:桥接模式 8.1 开关与电灯 8.6 开关与电灯的桥接模式实现 8.2 模式定义 8.7 设计原则 8.3 一般化分析 8.8 使用场合 8.4 一般化实现 8.9 本章要点 8.5 桥接模式分析方法 8.1 开关与电灯 居家生活,大家都用过电灯,开关和电灯通过电线相连接,开关控制电灯的亮 与灭,如图8-1所示。 8.2 模式定义 1 .抽象化 2 .实现化 3 .脱耦 8.3 一般化分析 在示例中出现了以下几个角色: (1)开关 (2)电灯 (3)电线 开关和电灯之间的关系如图8-4所示。 8.4 一般化实现  8.4.1 建立抽象开关  8.4.2 电灯实现 1 .白炽灯实现——IncandescentLight 2 .水晶灯实现——CrystalLight  8.4.3 客户端测试  8.4.4 对于扩展功能的思考 8.5 桥接模式分析方法 不要使用继承,使用对象组合的方式,将开关与电灯的强关联关系变化为弱 关联关系。重新建立关系图,如图8-7所示。 开关基类 -开关 -电灯接口 接口 电灯接口 1 1 开关子类 电灯实例 8.6 开关与电灯的桥接模式实现  8.6.1 创建电灯接口  8.6.2 创建开关 1 .创建一般开关——BaseSwitch 2 .创建遥控开关——RemoteControlSwitch  8.6.3 电灯实现 1 .白炽灯实现——IncandescentLight 2 .水晶灯实现——CrystalLight  8.6.4 客户端测试 1 .一般化测试 2 .让遥控开关遥控白炽灯 8.7 设计原则 1 .尽量使用对象聚合弱关联,避免使用继承强关联 2 .抽象化和实现化脱耦 8.8 使用场合 (1)不希望在抽象类和它的实现部分之间有一个固定的绑定关系; (2)类的抽象及实现都应该可以通过生成子类的方法加以扩充; (3)对一个抽象的实现部分的修改应对客户不产生影响,即客户的代码不 必重新编译。 8.8 使用场合 桥接模式的静态类图,如图8-9所示。 8.9 本章要点 1 .桥接模式 2 .设计原则 3 .相关的设计模式 4 .使用场合

文档评论(0)

1亿VIP精品文档

相关文档