11. 상태 패턴(State Pattern)

2017년 1월 13일 금요일

11. 상태 패턴(State Pattern)


정의
클래스 내부의 상태의 변화에 따라 동일한 요청에 대하여 클래스가 취하는 행동 또한 변하는 패턴
 

 
목적
객체의 상태를 각각의 클래스로 캡슐화 하여 동적으로 행동을 교체할 수 있도록 한다.
 
장점
상용자는 자신의 행동에 의해 객체 내부에서 어떤 행동을 실행하는지 알 필요가 없다.
 
단점
상태마다 클래스를 생성해야해 상태가 많아지면 클래스의 수가 증가한다.
 
Strategy 패턴과의 차이점
State 패턴 객체 내부의 상태에 따라 현 상황에 맞는 행동이 실행
Strategy 패턴 사용자가 어떤 전략을 사용할지 직접 선택하여 행동을 실행
 

0 개의 댓글 :

댓글 쓰기