State Pattern ?

State 패턴은 객체의 상태에 따라 행동을 변경하는 디자인 패턴입니다. 조건문으로 특정 상태를 변경하는 것이 아닌 상태를 객체화하여 필요에 따라 다르게 행동하도록 위임합니다.

💡 State ?

State란 객체가 가질 수 있는 어떤 조건이나 상황을 나타냅니다.

예를 들어 자동차에 시동이 걸려있는 상태라면 속력을 올리거나 줄일 수 있습니다. 만약 자동차의 시동이 꺼지는 상태라면 속력을 올리거나 줄일 수 없습니다. 자동차 시동 상태에 따라 메소드가 달라집니다.

State_Pattern.png

State 패턴의 구성 요소

State 패턴의 장점