본문 바로가기
개발/기본) 디자인패턴

디자인패턴) Command 패턴

by 테샤르 2019. 10. 16.

Command 패턴

 

커맨드 패턴이란 실행 가능한 기능을 캡슐화해서 여러가지 기능을 재사용가능한 클래스로 설계하는데 목적을 둔 디자인패턴이다.

 

실행 가능한 기능을 캡슐화해서 기능읠 실행을 요구하는 호출자 클래스와 수신자 클래스의 의존성을 재거한다.

예시로 Unit 이라는 클래스의 이동을 구현하고자한다. 이동에는 점프(Jump)와 달리기(Run)의 기능이 포함되어있다.

 

 

커맨드 패턴으로 구현을 하게되면 단순하게는 이렇게 가능하다.

MoveCommand의 추상클래스를 Jump 클래스/ Run 클래스가 상속받고 Action이라는 클래스를 통해서 처리한다.

이렇게 구현을 하게되면 Move의 기능의 구현부의 변경 or 추가된 기능이 독립적으로 처리가되기 때문에

재사용성과 독립성이 확보가된다.

 

가장 기본이되는 디자인패턴으로 여러 상황에서 많이 사용한다. 

확실히 알아두는것이 중요하다.

 

반응형

댓글