《设计模式Design Pattern》读书笔记之九

王朝other·作者佚名  2006-01-31
窄屏简体版  字體: |||超大  

《设计模式Design Pattern》读书笔记之九

Decorator模式

结构

目的

动态地给一个对象增加功能(responsibilities)。

讨论

1, 给一个对象增加功能,最简单的方法是派生一个类;但这是一种静态的方法,不灵活。

而Decorator是一种动态的方法,比较灵活。

2, 对于一个轻量型的component,Decorator模式是一种比较好的方法,但如果component是重量型的,Decorator会花费太大。对于重量型的,可以采取Strategy模式。

Decorator象是给component披上一层外衣,component不需要知道是什么东西披在了它身上。而Strategy是改变component内部,在内部维护一个个需要新增得功能对象。

3,Decorator可以看作是一种特殊的Composite,是只有一个component的composite;但Decorator的目的是为了增加额外的功能,而Composite的目的是对象的集成。

参考资料

《Design Pattern》 Gang-Of-4 1997

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航