设计模式总结之Proxy Pattern(代理模式)
来源:互联网 发布:怎么运营好淘宝店铺 编辑:程序博客网 时间:2024/04/28 19:35
目录
- 设计模式分类
- Singleton Pattern(单例模式)
- Prototype Pattern(原型模式)
- Factory Method Pattern(工厂方法模式)
- Abstract Factory Pattern(抽象工厂模式)
- Builder Pattern(建造者模式)
- Adapter Pattern(适配器模式)
- Bridge Pattern(桥接模式)
- Composite Pattern(组合模式)
- Decorator Pattern(装饰者模式)
- Façade Pattern(外观模式)
- Flyweight Pattern(享元模式)
- Proxy Pattern(代理模式)
- Chain of Responsibility Pattern(职责链模式)
- Command Pattern(命令模式)
- Interpreter Pattern(解释器模式)
- Iterator Pattern(迭代器模式)
- Mediator Pattern(中介者模式)
- Memento Pattern(备忘录模式)
- Observer Pattern(观察者模式)
- State Pattern(状态模式)
- Strategy Pattern(策略模式)
- Template Method Pattern(模板方法模式)
- Visitor Pattern(访问者模式)
Proxy Pattern(代理模式)
意图
为其他对象提供一种代理以控制对这个对象的访问。适用性
在需要用比较通用和复杂的对象指针代替简单的指针的时候,使用Proxy模式。下面是一些可以使用Proxy模式常见情况:- 远程代理(Remote Proxy)为一个对象在不同的地址空间提供局部代表。
- 虚代理(Virtual Proxy)根据需要创建开销很大的对象。
- 保护代理(Protection Proxy)控制对原始对象的访问。保护代理用于对象应该有不同 的访问权限的时候。
- 智能指引(Smart Reference)取代了简单的指针,它在访问对象时执行一些附加操作。 它的典型用途包括:
* 对指向实际对象的引用计数,这样当该对象没有引用时,可以自动释放它(也称为SmartPointers)。
* 当第一次引用一个持久对象时,将它装入内存。
* 在访问一个实际对象前,检查是否已经锁定了它,以确保其他对象不能改变它。
结构
例子
优缺点
优点:(1).职责清晰
真实的角色就是实现实际的业务逻辑,不用关心其他非本职责的事务,通过后期的代理完成一件完成事务,附带的结果就是编程简洁清晰。
(2).代理对象可以在客户端和目标对象之间起到中介的作用,这样起到了中介的作用和保护了目标对象的作用。
(3).高扩展性。
0 0
- 设计模式总结之Proxy Pattern(代理模式)
- 设计模式之---代理模式(Proxy Pattern)
- 设计模式之代理模式(Proxy Pattern)
- 设计模式之代理模式---Proxy Pattern
- Net设计模式实例之代理模式(Proxy Pattern)
- 设计模式之五:代理模式(Proxy Pattern)
- 设计模式之代理模式 (Proxy Pattern)
- 设计模式之-代理模式(Proxy Design Pattern)
- C#设计模式之代理模式(Proxy Pattern)
- 设计模式之(二)---代理模式Proxy Pattern
- 设计模式之代理模式(Proxy Pattern)
- Android设计模式之代理模式(Proxy Pattern)
- Net设计模式实例之代理模式(Proxy Pattern)
- 23种设计模式之-----代理模式(Proxy Pattern)
- 设计模式-代理模式(Proxy Pattern)
- 设计模式 -- 代理模式(Proxy Pattern)
- 【设计模式】代理模式(Proxy Pattern)
- Java设计代理模式之代理模式(Proxy Pattern)
- TextView文本显示图片和文字,竖直滚动显示
- android 仿去哪儿首页效果
- Zxing二维码开发随笔
- 安装ganglia及监控haoop
- xdebug配置
- 设计模式总结之Proxy Pattern(代理模式)
- Android手机——读取手机电话+短信+网页+图片+音乐+视频+APK+通知栏消息+换头像
- EventBus使用及简析
- iOS开发-警告收录及科学快速的消除方法
- TOMCAT-SSL双向认证-配置实例
- 隐式Intent跳转
- String, StringBuffer, StringBuilder
- java 判断邮箱和手机
- POJ 1988 Cube Stacking(带权并查集)