锁定老帖子 主题:我个人对装饰模式的理解
精华帖 (0) :: 良好帖 (0) :: 新手帖 (7) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-05-10
装饰模式是结构模式,结构模式的主要目的是如何实现类或者对象结合在一起形成更大的结构,形容词能不能成为装饰模式的谓词。我觉得有些欠妥。原因是类的职责要分清楚,如果形容词不是修饰类的职责方面的封装和增强。我觉得还是不要认为它是装饰模式。青颜色的香蕉苹果更像是在创建苹果这个对象,我觉得还是把他用创建模式去解释为好。
|
|
返回顶楼 | |
发表时间:2011-05-13
装饰模式应该是功能的增强,而且是没有顺序的增强。几个子类见可以自由的组合形成一个新的更加强大的功能!用形容词还说明问题明显是不够的。甚至可以说是错误的!当你的场景中需要多个子类自由组合的时候就可以用这个模式!比如薪金计算的时候薪金的叠加,可以而考虑参考使用!当然还要看具体情况的!有的时候组合模式会更加适合场景
|
|
返回顶楼 | |
发表时间:2011-08-18
硬是没有理解楼主表达的装饰模式什么。。
装饰模式部应该是都继承与同一个基类,然后在装饰类组合被装饰类进去。。 重写的方法中super被装饰的类的方法,在加入其他代码 纯属自我感觉,进来想理解更透彻的,能力没到么。 |
|
返回顶楼 | |
发表时间:2011-11-21
晕死,把简单的东西都弄复杂了
|
|
返回顶楼 | |
发表时间:2011-11-22
最后修改:2011-11-22
确实,所有的设计模式理解了之后,都没有那么复杂,千万别理解复杂了,要理解其中的核心含义!
楼主说的:让其他的东西 去修饰 另一个东西(我更喜欢 把装饰模式 叫做 修饰模式) 说的不太对,原则上他们是同一事物,对于外界来看他们是同一事物,他们要求持有一个 自己,为的就是装饰它! 这种结构对于适应已有的不能更改的接口要求,尤其有用 这样的结构带来的同一对象的外观丰富性也是很好的,单个对象的任意组合,表达出不同的效果! 没了,就这么简单 其他的变形都是为了更好地扩展! |
|
返回顶楼 | |