state pattern 정의 : 상태 패턴(state pattern)은 객체 지향 방식으로 상태 기계를 구현하는 행위 소프트웨어 디자인 패턴이다. 상태 패턴을 이용하면 상태 패턴 인터페이스의 파생 클래스로서 각각의 상태를 구현함으로써, 또 패턴의 슈퍼클래스에 의해 정의되는 메소드를 호출하여 상태 변화를 구현함으로써 상태 기계를 구현한다. -> 객체가 하는 모든 동작을 교체한다. 마치 다른 클래스를 사용하는 것 같은 효과를 얻을 수 있다. 동작을 할 때, 변하지 않는 것은 그대로 두고 변하는 것을 다른 클래스로 분리하는 것이 핵심. 말로 설명하면 복잡하니, 코드를 보자. #include class Character { public: int state; void run() { if (state == 1) ..