设计模式之禅-装饰器模式疑问
问题描述
- 设计模式之禅-装饰器模式应用场景里第三个是:需要为一批的兄弟类进行改装或加装功能,当然是首选装饰模式
- 需要为一批的兄弟类进行改装或加装功能如何理解
我的尝试
- 在网上搜了一大圈,只写了这个应用场景,而没有解释,设计模式之禅里也没解释
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
兄弟类:顾名思义,一般代指 从同一父级继承的类。
为一批的兄弟类进行改装或加装功能:即 为从同一父级继承的类 添加或修改功能。
从同一父级继承的类,都需要添加自己独有的功能,否则也就没有意义。
而添加功能的一个最佳实践就是使用装饰器。
装饰器思想无非是用一个类/函数包装一个类/函数,然后把包装类/函数暴露出去代替原类/函数。
比如在js里你可以这样实现:
a 函数本身只打印一个123,现在像每次调用a的时候打印一个'aaa',那你可以装饰一下该函数:
这就是最简单的一个装饰器。
python中使用@语法糖实现类似的功能。