State Pattern 상태 패턴 행동 패턴으로, 상태변화에 따라 클래스의 행동을 바꾸는 패턴입니다. 상태 패턴에서는 다양한 상태를 나타내는 객체와 상태 객체가 변경됨에 따라 동작이 달라지는 컨텍스트 객체를 생성합니다. State Pattern 상태 패턴 사용이 적합한 경우 현재 상태에 따라 행동(기능)이 변화되는 객체인 경우, 상태의 가짓수가 많고, 상태가 빈번하게 변경되는 경우 클래스의 상태 필드에 따라서 기능을 변경하는, 수많은 조건문으로 코드가 복잡해진 경우 상태 필드를 변경하는 조건 코드가 많이 중복해서 사용되고 있는 경우 장단점 장점 상태를 관리하는 로직을 클래스 객체에서 분리해 관리할 수 있습니다. (단일책임원칙) 기존 상태 클래스와 컨텍스트 객체의 수정 없이 새로운 상태를 추가할 수 있습..