策略模式与桥梁模式两者之间类图很相似,让我们从一个邮件发送的案例来分析策略模式与桥梁模式的区别
邮件都有两种格式的,文本邮件与html邮件,而发送邮件有很多邮箱服务器可以发送,先用策略模式实现邮件发送,具体UML图如下:
再来看看桥梁模式实现邮件发送,桥梁模式关注的是抽象和实现的分离
策略模式和桥梁模式很相似,我们只能够从语义上来区别它们,策略模式是一个行为模式,旨在封装一系列的行为,封装的格式不同,行为也不同,而桥梁模式则是解决在不破坏封装的情况下如何抽取出它的抽象部分和实现部分,前提是不破坏封装,让抽象部分和实现部分都可以独立地变化。