728x90
스테이트 패턴
-
Java Design Pattern - 스테이트 패턴(State Pattern)Language/Java Design Pattern 2022. 11. 20. 19:40
스테이트 패턴(State Pattern) 스테이트 패턴이란? 스테이트 패턴은 객체가 특정 상태에 따라 행위를 달리하는 상황에서, 자신이 직접 상태를 체크하여 상태에 따라 행위를 호출하지 않고, 상태를 객체화하여 상태가 행동을 할 수 있도록 위임하는 패턴을 말한다. 즉, 객체의 특정 상태를 클래스로 선언하고, 클래스에서는 해당 상태에서 할 수 있는 행위들을 메서드로 정의한다. 그리고 이러한 각 상태 클래스들을 인터페이스로 캡슐화하여, 클라이언트에서 인터페이스를 호출하는 방식을 말한다. 여기서 상태란, 객체가 가질 수 있는 어떤 조건이나 상황을 의미한다. 스테이트 패턴의 사용 이유 예를 들어, 노트북을 켜고 끄는 상황을 생각해보겠다. 1. 노트북 전원이 켜져 있는 상태에서 전원 버튼을 누르면, 전원을 끌 수..