스테이트 패턴 (1) 썸네일형 리스트형 [소프트웨어/디자인패턴] 스테이트 패턴(State Pattern) State Pattern 스테이트 패턴은 상태에 행위를 위임하는 패턴이다. Context 전등이 있다고 가정하자, 우리는 on버튼과 off버튼을 이용해서 끌 수 있고, 킬 수 있다. off상태에서 off버튼 눌러도 아무런 변화는 없다(반대의 경우도 마찮가지다) 이를 아래와 같이 상태 머신 다이어그램으로 나타낼 수 있다. 상태 머신 다이어그램은 별다른 코드레벨 설계가 아니라고 볼 수 있다. 그래서 우리는 보통 생각하는 것과 같이 if의 향현의 코드를 아래와 같이 만들 수 있다. 내부 또는 내부지만 공개한 enum을 통해 상태를 정의하고 Light클래스는 해당 STATE를 필드로 가지고 있음으로써 해당 객체의 상태를 정의했다.각각의 on_button_pushed(), off_button_pushed()를 보.. 이전 1 다음