코드/GOF
디자인 패턴 - 행위(Behavioral) 패턴 (4) 명령 패턴(Command Pattern)
미로처럼
2024. 3. 18. 13:27
728x90
실행될 기능 즉 객체의 행위를 캡슐화 하는 패턴으로 기느을 요청하는 호출자와 그 기능을 실행하는 수신자 클래스 사이의 의존성을 제거하는 패턴이다.
클래스
장점
- Invoker의 코드를 바꾸지 않고 execute 실행 메서드를 사용가능하다.
단점
- 코드의 복잡도가 증가한다 Command (기능)클래스가 많이 늘어난다.
Command 패턴 요소
Invoker
- Command로 부터 기느을 실행해 달라고 요청하는 호출클래스
Command
- ConcreteCommand의 실행 기능에 대한 인터페이스로 실행은execute , 취소는 undo 같은 메서드로 선언해준다.
ComcreteCommand
- 실제로 실행되는 기능을 구현함
Receiver
- ConcreteCommand에서 기느을 구현하기위해 필요한 클래스
728x90