装饰者模式

装饰者模式_第1张图片
定义

定义: 在不改变元对象的基础上,通过对其进行包装拓展(添加属性方法)


装饰者模式_第2张图片
详细描述

装饰着(decorator) 模式能够在不改变对象自身的基础上,
在程序运行期间给对象动态的添加职责.
与继承相比,装饰着是一种更轻便,更灵活的做法.
当脚本运行时,
如果在子类中增加行为会影响原有类所有的实例,(指的应该是工厂模式?)
而装饰者,能给不同对象各自添加新行为和属性.


装饰者模式_第3张图片
image.png

先记录一下,呆会再移动到别的位置.
是这样的,
无论是传参还是调用方法,
我发现有两种不同的形式,
第一种是,我传一个值,也就是所谓的值.
第二种是,我传一个索引,存在一个库,所有的值按照某种规则,
放置在库中,根据这个索引,在库中找到相应的值,
这个值可能是数据,也有可能是函数.

策略模式,工厂模式,以及今天的装饰者模式都给了我强烈的上面的印象.
也就是说,要形成一个库,这个库可能是一个数组,也有可能是一个对象,
这样做的好处是显而易见的,
那就是整齐,有规律,有结构
导致复用性,扩展性变得很强.
所以我们尽可能要有这种思维.
无论是函数,还是一些值,都尽量弄一些库区储存.

从另外一个角度上来讲.
也许所有处理事件时,产生的数据和方法,都有必要以某种形式储存下来?
无脑储存明显会感觉占用空间,
但也许是提升效率的关键?

当然以上都是一种感觉, 实际上我可能还无法识别什么是该这样处理的情况.
更谈不上什么操作.

另一个有感是,
函数的执行问题.
通过用一个函数定义形态包裹函数执行形态,
我们可以实现执行时机的选择,
我们也可以放进某个数组里,来实现同时执行?


                    
                    

你可能感兴趣的:(装饰者模式)