第13章 红酒经销:代理模式.pptVIP

  • 10
  • 0
  • 约小于1千字
  • 约 11页
  • 2018-05-18 发布于四川
  • 举报
第13章 红酒经销:代理模式 13.1 红酒代理商 13.2 模式定义 13.3 模式分析 13.4 模式实现 13.5 设计原则 13.6 使用场合 13.7 本章要点 13.1 红酒代理商 代理商完全可以满足你的需求,如图13-1所示。 13.2 模式定义 在代理模式中,涉及的角色有以下几类。 (1)抽象角色:声明真实对象和代理对象的共同接口。 (2)真实角色:真正处理请求的目标对象。 (3)代理角色:代理对象角色内部含有真实对象的引用,从而代理对象可以将请求转为真实对象处理。 13.3 模式分析 13.3.1 消费者购买行为分析 一起看消费者购买红酒的过程。 (1)找到红酒的代理商; (2)代理商有客户想买的红酒,则直接卖给客户,否则下订单到红酒生产厂家; (3)红酒生产厂家生产红酒批发给代理商。 静态关系如图13-2所示。 13.3.2 静态建模 根据上面的关系图总结红酒代理商的类图,为后面的开发做好充分的准备,如图13-3所示。 13.4 模式实现 13.4.1 创建红酒生产厂商 1.红酒工厂接口——IRedWine 2.红酒工厂实现——RealRedWineFactory 13.4.2 到红酒工厂购买红酒 13.4.3 创建红酒代理商 13.4.4 到红酒代理商处购买红酒 13.5 设计原则 1.延迟加载,提高系统效率 2.单一职责原则 13.6 使用场合 (1)远程代理(RemoteProxy)为一个对象在不同的地址空间提供局部代理。 (2)虚拟代理(VirtualProxy)中,若一个对象的创建非常耗时,可通过代理对象去调用,在真实对象创建前,返回一个假的调用,等真实对象创建好了,这时返回给客户端的就是一个真实对象的相应方法调用。 (3)保护代理(ProtectionProxy)控制对原始对象的访问。 (4)智能指引(SmartReference)取代了简单的指针,它在访问对象时执行一些附加操作。 13.6 使用场合 来一起看代理模式的静态类图,如图13-7所示。 13.6 使用场合 1.扩展:Java SDK中的代理模式 2.动态代理实现 3.扩展:相关设计模式——装饰者模式 13.7 本章要点 1.代理模式 2.设计原则 3.模式中的角色 4.相关的模式 5.使用场合

文档评论(0)

1亿VIP精品文档

相关文档