【发布时间】:2015-09-05 06:22:18
【问题描述】:
我正在学习Decorator Pattern。这是一个非常强大的模式,而且非常有用。该模式的目标很简单,在运行时向对象添加(扩展)行为,而无需通过组合和委托重新编译源代码,因此为扩展行为提供了子类化的替代方案。但是,我阅读了这种模式的主要缺点之一,并不太理解它。声明如下:
“人们有时会使用一段 依赖的客户端代码 具体类型和引入装饰器不经过深思熟虑 一切。现在,关于我的一件好事是,你通常可以 透明地插入装饰器,客户永远不必知道它 与装饰者打交道。但就像我说的,一些代码 依赖于 特定类型,当您开始介绍装饰器时,轰隆隆!坏的 事情发生了。”
取自“Head first design patterns”
作者所说的“依赖特定类型”是什么意思。如果可能,请提供真实世界和简单示例
【问题讨论】: