您的位置:首页 > 其它

设计模式学习(八)桥接模式-组合模式-装饰模式

2007-09-03 10:48 369 查看
桥接模式

桥接模式非常像适配器模式,都是用一个类将一种接口转换成另外一种接口,但是适配器模式的意图是:使一个或多个类的接口看起来像一个特定类的接口。桥接模式将类的接口和它的实现分离,无需修改客户端代码就可以改变或替换实现过程。

桥接模式的效果:

1 桥接模式可以保持客户端程序的接口不变,而允许读者修改显示类或要使用的类。这样可以防止重新编译一系列复杂的用户接口模块,而只需要重新编译Brudge和实际的最终显示类

2 可以分别扩展实现类和Bridge类,二者之间通常不会有相互作用。

3 对客户端程序很容易隐藏实现细节。

组合模式

组合就是对象的集合, 其中的每个对象既可以是一个组合,也可以是简单的对象。

组合模式的效果:

组合模式定义了包含简单对象和复杂组合对象的类层次结构,并使他们对客户端程序具有一致性。由于这种简化,客户端可以变得相当简单,因为节点和叶子可以用同样的方式去处理。

组合模式使得向集合添加新类型的组件变得容易,只要这些组件提供一个相似的编程接口。另一方面,这也有缺点,就是使你的程序更加一般化,很难限制某个类,而通常都希望能做到这一点。

组合模式的意图是,允许构建一棵由各种相关类组成的树,即使某些类具有不同的属性,某些类是叶子不能有孩子。

装饰模式

装饰模式提供一种方法:改变单个对象的行为,但不需要创建一个新的派生类。

装饰模式提供了一种给一个类添加职责的方法,它比使用继承更加灵活,因为它能将职责加到类的指定实例中,它也允许定制一个类,而无需在继承层次结构中创建高层次子类。

装饰模式的缺点:

1 Decorator和它包含的组件是不一样的,这样,检测对象类型时会失败。

2 装饰模式会使一个系统带有“大量的小对象”,对于维护代码的程序员来说,它们看起来都差不多,维护起来很困难。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐