상태 패턴이란 ?
- 객체 자신의 내부 상태에 따라 행위를 변경하도록 하는 패턴
- 객체의 내부 상태가 바뀔 때 마다 객체의 행동을 바꿀 수 있도록 도와주며 마치 객체의 클래스가 바뀌는 것 처럼 보여줄 수 있는 행동패턴.
행동패턴이란 ?
객체들이 서로 상호작용하는 방법과 책임을 분산하는 방법에 대한 문제를 해결하는 패턴
상태 행동 패턴
- 객체의 특정 상태를 클래스로 선언하고 해당 상태에서 할 수 있는 행위들을 메소드로 정의한다.
- 이러한 상태 클래스를 인터페이스로 캡슐화하여 클라이언트에서 인터페이스로 호출하는 방식으로 사용한다.
상태 패턴은 언제 사용할까 ?
- 객체의 상태에 따라 달라지는 다중 분기 조건 처리가 너무 많이 들어 있을 때
쿵푸팬터를 사용한 상태 패턴 예시

쿵푸팬더 움직임 시스템