드워프의 금광 캐기
금광을 캐기 위해선 3가지 일을 해야한다. 먼저 금광 터널을 뚫어야 하며, 금을 캐야하고 마지막으로 금을 날라야 한다. 이 세가지 작업을 드워프 혼자서 하려면 3단계 업무가 필요하다
- 굴파기
- 금캐기
- 나르기
하지만 드워프 1명이서는 하루에 한가지 작업만 할 수 있는데, 하루 일과는 이렇다.
- 일어나기
- 광산으로 이동
- 일하기
- 집에가기
- 잠자기
파사드는 드워프들의 고용주이며, 귀차니즘이 심해서 하루의 시작과 끝을 알리는 일과 금을 캐라라는 3가지 명령만 하려고 한다.
- 하루 시작
- 일해
- 하루 끝
파사드는 3명의 드워프를 고용해 각각의 역할을 부여했다. 각자 역할을 아는 드워프들은 일하기시간에 알아서 자신의 일을 할 수 있다. 파사드는 일꾼들에게 사전 교육을 진행한다(-makeActions). 하루 시작을 알리면 1 일어나기, 2 광산으로 이동 을 하도록 한다. 일해라고 명령하면 3 일하기 업무에 따라 각자 자신의 역할에 맞는 일을 시작한다. 하루가 끝나면 4 집에가기, 5 잠자기를 하도록 한다.
이제 파사드는 3가지 명령만으로 3 종류의 각기 다른 작업을 5 단계에 하루 일과에 맞춰 진행할 수 있게 되었다. 파사드 만세!
https://github.com/iluwatar/java-design-patterns/tree/master/facade

Leave a comment