更新时间:2019-08-02 16:23:46
14 装饰者模式:给新房子装修装饰者模式:给新房子装修
装饰者模式装饰者模式 (Decorator Pattern)又称装饰器模式,在不改变原对象的基础上,通过对其添加属性或方法来进行
包装拓展,使得原有对象可以动态具有更多功能。
本质是功能动态组合动态组合,即动态地给一个对象添加额外的职责,就增加功能角度来看,使用装饰者模式比用继承更为
灵活。好处是有效地把对象的核心职责和装饰功能区分开,并且通过动态增删装饰去除目标对象中重复的装饰逻
辑。
注意:注意: 本文可能用到一些编码技巧比如 IIFE(Immediately Invoked Function Expression, 立即调用函数表达
式),ES6 的语法 let/const 、Class 等,如果还没接触过可以点击链接稍加学习 ~
相信大家都有过房屋装修的经历,当毛坯房建好的时候,已经可以居住了,虽然不太舒适。一般我们自己住当然不
会住毛坯,因此我们还会通水电、墙壁刷漆、铺地板、家具安装、电器安装等等步骤,让房屋渐渐具有各种各样的
特性,比如墙壁刷漆和铺地板之后房屋变得更加美观,有了家具居住变得更加舒适,但这些额外的装修并没有影响
房屋是用来居住的这个基本功能,这就是装饰的作用。
加紧学习,抓住中心,宁精勿杂,宁专勿多。
—— 周恩来