Skip to content

Latest commit

 

History

History
43 lines (27 loc) · 1.53 KB

桥接模式.md

File metadata and controls

43 lines (27 loc) · 1.53 KB

Java设计模式 ———— 桥接模式

一、介绍

  • 意图

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

这里的“抽象”,指的并非“抽象类”或“接口”,而是被抽象出来的一套“类库”,它只包含骨架代码,真正的业务逻辑需要委派给定义中的“实现”来完成。而这里的“实现”,也并非“接口的实现类”,而是一套独立的“类库”。“抽象”和“实现”独立开发,通过对象之间的组合关系,组装在一起。

  • 何时使用

实现系统可能有多个角度分类,每一种角度都可能变化。

  • 如何解决

把这种多角度分类分离出来,让它们独立变化,减少它们之间耦合。

二、优缺点

  • 优点:

1、抽象和实现的分离。

2、优秀的扩展能力。

3、实现细节对客户透明。

  • 缺点:

桥接模式的引入会增加系统的理解与设计难度,由于聚合关联关系建立在抽象层,要求开发者针对抽象进行设计与编程。

三、DEMO

根据不同的告警规则,触发不同类型的告警。

告警支持多种通知渠道,包括:邮件、短信、微信、自动语音电话。

通知的紧急程度有多种类型,包括:SEVERE(严重)、URGENCY(紧急)、NORMAL(普通)、TRIVIAL(无关紧要)。

不同的紧急程度对应不同的通知渠道。比如,SERVE(严重)级别的消息会通过“自动语音电话”告知相关人员。