关于桥接与策略的区别

sdhls 2004-03-15 11:19:19
俺怎么感觉到这两种模式一样的,说句不知天高地厚的话,我觉得很有几个模式都是大同小异的,哪位高手点拨一二,先谢了
...全文
374 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzhenhua21 2004-03-27
  • 打赏
  • 举报
回复
mark一下吧
sdhls 2004-03-16
  • 打赏
  • 举报
回复
二位果然高手,佩服!肯定都是久经沙场了。羡慕!暂时只好努力读书了!
peakpanda 2004-03-16
  • 打赏
  • 举报
回复
strategy模式是为了扩展和修改,并提供动态配置。它往往可以在同一环境当中使用不同的策略,就是调用不同的派生类。其内部实现是自由的,不受已有的类接口的限制(很多时候根本就不调用现成的接口)。
bridge模式是往往是为了利用已有的方法或类。它将原来不统一,不兼容的接口封装起来,变成统一的接口。它的应用往往是不同的环境或平台下只能选择一种,比如说在windows平台下只能用WinClass,而在unix平台下只能用UnixClass.它的主要作用不是配置而是定义通用接口。
据个例子来说:我要画园,要实心园,我可以用SolidPen来配置,画虚线园可以用dashedPen来配置。这是strategy模式。
而同样是画园,我是在windows下来画实心园,就用windowPen+solidPen来配置,在unix下画实心园就用unixPen+solidPen来配置。如果要再windows下画虚线园,就用windowsPen+dashedPen来配置,要在unix下画虚线园,就用unixPen+dashedPen来配置。
我这里仅仅是就一种情况来说strategy和bridge的组合应用,其他的组合可能性随环境变化而多种多样。从中可以看出,bridge和strategy是可能组合使用,侧重不同方面的。
模式某种角度上来讲就是对象组合。不要看他们都是对象组合就好像是一样的。模式的动机,意图,使用场合,组合方式,这些都是模式的一部分。其中细微的不同足以区分不同的模式。
defstu 2004-03-15
  • 打赏
  • 举报
回复
这是因为设计模式的划分更多的是面对问题域而不是面对实现方式
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
实际上所有模式可以只分为类模式和对象模式两种,类模式是用继承而对象模式是用委托
Bridge模式和Strategy模式相似就是因为他们都将任务委托给了另外一个接口的具体实现,
他们之间的区别在于Bridge的目的是让底层实现和上层接口可以分别演化,从而提高移植性
而Strategy的目的是将复杂的算法封装起来,从而便于替换不同的算法。
因此可以想象一般情况下Bridge的实现几乎不会在运行时更改而Strategy的算法则很有可能
需要在运行时更换,这就导致在细节方面需要考虑的因素可能会很不相同。
桥接模式(Bridge Pattern)详解 1. 什么是桥接模式? 2. 为什么需要桥接模式? 3. 桥接模式的核心概念 4. 桥接模式的结构 5. 桥接模式的基本实现 5.1 基础示例:绘图应用 5.2 实例:跨平台窗口系统 5.3 实例:消息发送系统 6. Java中桥接模式的实际应用 6.1 JDBC API 6.2 Java AWT中的Graphics 6.3 SLF4J日志框架 7. 桥接模式与其他设计模式的比较 7.1 桥接模式 vs 适配器模式 7.2 桥接模式 vs 策略模式 7.3 桥接模式 vs 抽象工厂模式 8. 桥接模式的优缺点 8.1 优点 8.2 缺点 9. 何时使用桥接模式? 10. 常见问题与解决方案 10.1 如何确定哪部分是抽象,哪部分是实现? 10.2 如何处理多层次的抽象和实现? 10.3 如何在运行时动态切换实现? 11. 实际应用场景示例 11.1 多平台媒体播放器 11.2 主题化用户界面 12. 桥接模式在实际项目中的应用 12.1 Spring框架中的事务管理 12.2 Android中的硬件抽象层(HAL) 12.3 文件系统接口 12.4 数据持久化框架 13. 桥接模式的变种和扩展 13.1 带有状态的桥接模式 13.2 带有缓存的桥接模式 13.3 桥接模式与适配器模式结合 14. 总结与最佳实践 14.1 何时使用桥接模式 14.2 实现桥接模式的最佳实践 14.3 常见陷阱

51,396

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧