知识卡片

代理模式的定义与三个角色

普通读书笔记卡 · 1986

内容

代理模式为其他对象提供代理以控制对它的访问。三个角色:Subject抽象主题(业务接口); RealSubject具体主题(真正执行业务的被代理者);Proxy代理主题(持有RealSubject引用把 方法委托给真实对象)。调用方持有Proxy类型,感知不到内部真正执行操作的是谁。发散:状态、 策略、访问者等模式本质上也是这个”委托”结构的变体。

参考来源

- 位置:《设计模式之禅(第2版)》第12章《代理模式》(源文件:_epub-src/text/part0053.html) - 结论依据:原文给出代理模式定义并说明三个角色(Subject/RealSubject/Proxy),指出"许多其他的模式,如状态模式、策略模式、访问者模式本质上是在更特殊的场合采用了委托模式"。 - 原始内容:为其他对象提供一种代理以控制对这个对象的访问……Proxy代理主题角色,也叫做委托类、代理类。它负责对真实角色的应用,把所有抽象主题类定义的方法限制委托给真实主题角色实现,并且在真实主题角色处理完毕前后做预处理和善后处理工作。