Command 패턴
실행할 명령(요청)을 하나의 객체로 만들어, 그 명령을 큐에 쌓아두거나 나중에 실행하거나, 실행 취소(undo)·재실행할 수 있게 해주는 디자인 패턴입니다.
한눈에 보는 정의
Command 패턴은 실행할 명령(요청)을 하나의 객체로 만들어, 그 명령을 큐에 쌓아두거나 나중에 실행하거나, 실행 취소(undo)·재실행할 수 있게 해주는 디자인 패턴입니다.
자세히 알아보기
- 예문: "문서 편집기에서 '실행 취소' 버튼을 누르면 방금 한 작업이 되돌아가는 것은 Command 패턴으로 구현하는 대표적인 기능이다."
- 요청 자체를 값으로 다룰 수 있는 객체로 만들기 때문에, 명령을 실행한 이력을 저장해두었다가 나중에 되돌리거나 다시 실행하는 기능을 쉽게 구현할 수 있습니다.
- 요청을 보내는 쪽과 실제로 그 요청을 처리하는 쪽을 분리해, 서로의 구체적인 구현을 몰라도 되게 만들어줍니다.
- 여러 명령을 순서대로 쌓아뒀다가 나중에 한꺼번에 실행하는 배치 작업이나 매크로 기능을 구현할 때도 자주 활용됩니다.