DesignPatterns에서 BehavioralPatterns의 하나.
'명령'을 객체로 표현해서 이력을 보관하기도 하고, 재실행을 할 수 있도록 한다.
GUI이벤트에서 많이등장.
Structure
Example
AWT/Swing으로 만든, GUI drawer CommandDrawer.java
Stack을 써서 명령들을 모은다. 이렇게 하면, undo가 용이하다.
- 마우스드래그 이벤트가 생길때마다 명령인스턴스를 생성하고, 보관하고, 실행한다.