我也大话设计模式--装饰模式

引子:

      昨天有个做开发的MM跟我聊起设计模式,她问我简单工程模式、策略模式还有装饰模式有什么区别呢,我灵机一动想出了如下解释;

正文:

     本人也曾阅读过设计模式的相关书籍,但是对设计模式的理解还是不够深入,总是觉得没有掌握设计模式的精髓,昨天有个做开发的MM跟我聊起设计模式,她问我简单工程模式、策略模式还有装饰模式有什么区别呢,我灵机一动想出了如下解释:装饰模式很简单嘛,我顺手拿起一支自动铅笔对她说,你看这就是个装饰模式。

大家都有用过自动铅笔,自动铅笔的原理十分简单,自动替换铅芯,很方便,自动铅笔就是对铅芯的装饰,在铅芯可以写字的基础上添加了方便使用的功能。

    套用设计模式的思维来说,被装饰者就是铅芯;装饰者就是笔,具体的装饰者就是自动铅笔;装饰者和被装饰者的共通接口就是“写”方法。在装饰者的内部有个被装饰者的实例,就是自动铅笔的内部有铅芯,在调用装饰者的“写”方法时,装饰者调用了被装饰者的实例来进行“写”的操作,并在此基础上添加了其他的功能,就是在用自动铅笔写字的时候,其实字还是由铅芯“写”出来的,自动铅笔不过是添加了方便写。

后记:

   个人理解,装饰模式的精髓就是,在装饰者的装饰方法内部,要调用被装饰者的装饰方法。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值