1.概念
代理角色获取并管理真实角色的事务, 与外界进行协调处理。
武则天 代理 唐高宗 管理朝政
1.1.角色分析
抽象角色: 接口或者抽象类
真实角色:被代理角色
代理角色:负责代理真实角色
客户角色:访问代理对象
1.2 房东-中介-客户
中介代理房东租房给客户
package com.qq.study;
public class Client {
public static void main(String[] args) {
Landlord landlord = new Landlord();
Proxy proxy = new Proxy();
proxy.rent();
}
}
1.3 好处
(1) 减少真实角色的事务
(2) 代理角色负责处理业务,实现分工
(3)公共业务方便集中管理
如:
房东只需要将租房意愿交给中介,
中介负责带客户看房、签合同等租房公共事务。
租房公共事务拓展,只需要拓展中介事务,实现集中管理。
1.4 缺点
代理角色增加代码量,影响开发效率。