사용 시점 및 이유
- 현재 상태에 따라 다르게 행동하는 객체가 있을 때
- 상태에 따른 로직을 분기문을 이용하여 더러운 코드가 되었을 때
구현
- 클라이언트는 최초 Context생성시에만 초기화 상태를 지정해 주고, 그 이후 상태 흐름은 각 State오브젝트에 따른다.
- ConcreteState에서 doSomething()을 실행해주면, 그 내부에서 context의 다음 상태를 지정해 준다.
'디자인패턴' 카테고리의 다른 글
(행동패턴) 템플릿메서드 패턴 (0) | 2023.05.10 |
---|---|
(행동패턴) 전략 패턴 (0) | 2023.05.10 |
(행동패턴) 옵저버 패턴 (0) | 2023.05.08 |
(행동패턴) 메멘토 패턴 (0) | 2023.05.08 |
(행동패턴) 중재자 패턴 (0) | 2023.05.06 |