10. State Pattern

최정훈·2024년 11월 26일
0

1. State Pattern


객체의 내부 상태가 바뀜에 따라서 객체의 행동을 바꿀 수 있다. 마치 객체의 클래스가 바뀌는 것과 같은 결과를 얻을 수 있다.

State Pattern은 상태를 별도의 클래스로 캡슐화한 다음 현재 상태를 나타내는 객체에게 행동을 위힘하므로, 내부 상태가 바뀔 때 행동이 달라진다.

State Pattern을 사용했을 때의 장점은 다음과 같다.

  • 각 상태의 행동을 별개의 클래스로 분리할 수 있다.
  • 관리하기 힘든 if-else조건문의 연속을 없앨 수 있다.
  • 각 상태의 변화에는 닫혀있고, 새로운 상태 클래스를 추가하는 확장에는 열려있다.(OCP)
profile
게임개발자(희망)의 공부일지

0개의 댓글