1. 定义及模式适合场景
1.1 定义
- 干活是我的,功劳是你的。不关心过程,只关心结果。
- 老板不需要和员工有联系,只和项目经理沟通,由项目经理协调委派程序员工作,在老板看来功劳都是项目经理的,背锅的也是项目经理,保护了程序员
1.2 模式适合场景
- 通过任务委派能够将一个大型的任务细化,然后通过统一管理这些子任务的完成情况实现任务的跟进,能够加快任务执行的效率。
- spring mvc中核心控制器DispatcherServlet的执行流程。
2. 结构
public static void main(String[] args) {
项目经理 项目经理 = new 项目经理();
项目经理.working("设计");
项目经理.working("敲代码");
}
public interface 员工 {
void working(String command);
}
public class 项目经理 implements 员工 {
private Map<String, 员工> emp = new HashMap<>();
public 项目经理() {
emp.put("设计", new UI());
emp.put("敲代码", new 程序员());
}
@Override
public void working(String command) {
emp.get(command).working(command);
}
}
public class 程序员 implements 员工 {
@Override
public void working(String command) {
System.out.println("程序员开始" + command);
}
}
public class UI implements 员工 {
@Override
public void working(String command) {
System.out.println("UI开始" + command);
}
}