: 상태에 따라 동일한 기능 요청의 처리를 다르게 함 상태패턴에서 중요한 점은 상태 객체가 기능을 제공한다는 점이다.
기능을 제공하는 클래스의 메서드가 상태 객체에 처리를 위임하는 방식으로 동작한다.
새로운 상태가 추가되더라도 콘텍스트 코드가 받는 영향은 최소화 된다.
상태 패턴을 적용할 때 고려할 문제는 콘텍스트의 상태 변경을 누가 하느냐에 대한 것이다.