`
zijan
  • 浏览: 64610 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

再谈谈Bridge-桥接模式

阅读更多
GoF说的很清楚,桥模式的意图是:将抽象部分与它的实现部分分离,使它们都可以独立地变化。
说白了就是面向对象程序所倡导的:针对接口编程,和使用聚合,尽量不使用继承这个原则。
最典型的例子就是JDBC。

JDBC API(Sun)提供抽象部分,各个JDBC驱动厂商(Oracle, Mysql...)提供实现部分。新的JDBC驱动可以“即插即用”在JDBC API中,而不需要修改我们调用者的代码。这就是所谓的抽象部分(JDBC API)与它的实现部分(JDBC Driver)分离。以桥模式为基础,衍生出了现在比较流行的插件模式。
分享到:
评论
4 楼 zijan 2007-10-06  
fuliang 写道
引用
我们平常开发中用到的XXXDao接口, XXXJdbcDao和XXXHbmDao不同实现类就是桥模式的应用。
这个是策略模式吧,桥接是抽象出来的东西,调用不同的实现,是组合的方式.而策略是不同的实现继承继承抽象接口.我们常用的XXXDao接口,XXXJdbcDao和XXXHbmDao都是继承这个接口的.所以不是桥接模式


当从类行为的角度去看XXXDao接口,XXXJdbcDao和XXXHbmDao,策略模式没问题。
当从整体架构的角度去看,所有数据层设计采用XXXDao接口,XXXJdbcDao和XXXHbmDao,我的理解属于设计模式的结构类别。
3 楼 williamou 2007-10-04  
我记得看过书上说,
jdbc是adapter pattern??
2 楼 dennis_zane 2007-10-04  
dao,service都是策略模式的,这与bridge模式是不同,Bridge模式常常在两个独立的变化部分中应用策略模式
1 楼 fuliang 2007-10-04  
引用
我们平常开发中用到的XXXDao接口, XXXJdbcDao和XXXHbmDao不同实现类就是桥模式的应用。
这个是策略模式吧,桥接是抽象出来的东西,调用不同的实现,是组合的方式.而策略是不同的实现继承继承抽象接口.我们常用的XXXDao接口,XXXJdbcDao和XXXHbmDao都是继承这个接口的.所以不是桥接模式

相关推荐

Global site tag (gtag.js) - Google Analytics