요청을 객체의 형태로 캡슐화하여 사용자가 보낸 요청을 원하는 시점에 이용할 수 있도록, 매서드 이름, 매개변수 등의 요청에 사용되는 정보를 로깅, 취소 할 수 있는 패턴이다. 이 패턴을 통해 책임을 분산할 수 있다. 구조 ▷ Command : 요청을 실행하기 위한 인터페이스 ▷ ConcreteCommand : Receiver object 와 action간의 바인딩을 정의한다. Receiver에서 대응하는 동작을 Invoking에서 실행시키는 것을 구현 ▷ Receiver : 받은 요청 수행에 대한 세부 동작 ▷ Invoker : Command에 task 요청 구현 기본 >> abstract class Command { protected Receiver receiver; // ..