상태 (State) 패턴이란State 패턴은 행동 패턴 중 하나로 내부 상태가 변경될 때 객체의 행동을 교체한다. 객체가 상태(값)을 변경하여, 행동의 변화를 유발함으로서 클래스 자체가 변경된 것 처럼도 보일 수 있다. 등장 배경[초안, 검토, 출판본]의 상태를 가진 문서 객체가 있다고 가정할 때, 발행(publish)라는 메서드는 각 상태(State) 마다 다르게 작동할 것이다. 초안: 검토 상태로 변경 검토: 공개 상태로 변경 / 관리자만 가능출판본: 이미 발행되었기에, 아무것도 하지 않음 이 처럼 유한한 범위의 상태를 가지고 있는 프로그램에 상태 변화에 따라 다르게 행동할 수 있도록 설계 되는 것이런 변경(transition)이라고 불리는 원칙은 유한한 범위이고, 미리 결정 되어야 한다. 예시..