知识卡片

组合装饰代理

普通读书笔记卡 · 1921.h.1

内容

Composite 组织对象树,Decorator 给对象树节点动态加职责,Proxy 控制对对象的访问。它们可一起出现,但各自解决不同变化点。发散:结构型模式常像积木,组合时要保持意图清楚。

参考来源

- 位置:第4章《结构型模式》4.8.2节「Composite、Decorator与Proxy」(源文件:_epub-src/OEBPS/Text/part0079.xhtml) - 结论依据:原文明确说明Composite和Decorator结构图相似但目的不同——Decorator旨在不生成子类即可添加职责,Composite旨在统一处理多个相关对象;Proxy与Decorator结构相似但代理控制访问而非添加职责,直接支持卡片对三者可一起出现但各自解决不同变化点的论述。 - 原始内容:"Decorator旨在使你不需要生成子类即可给对象添加职责……Composite则有不同的目的,它旨在构造类,使多个相关的对象能够以统一的方式处理……像Decorator模式一样,Proxy模式构成一个对象并为用户提供一致的接口。但与Decorator模式不同的是,Proxy模式不能动态地添加或分离性质。"