Strategy 패턴
전략 패턴(strategy pattern) 또는 정책 패턴(policy pattern)은 실행 중에 알고리즘을 선택할 수 있게 하는 행위 소프트웨어 디자인 패턴이다 전략 패턴은
- 특정한 계열의 알고리즘들을 정의하고
- 각 알고리즘을 캡슐화하며
- 이 알고리즘들을 해당 계열 안에서 상호 교체가 가능하게 만든다
전략 인터페이스(Strategy Interface) 작성: 게임에서 사용될 모든 전략에 대한 공통 인터페이스를 정의
전략 클래스(Strategy Classes) 작성: 전략 인터페이스를 구현하는 여러 클래스를 작성
컨텍스트 클래스(Context Class) 작성: 컨텍스트 클래스는 전략 인터페이스를 멤버 변수로 가지고 있으며, 실행 시에 원하는 전략을 설정
전략 실행: 컨텍스트 클래스에서 전략을 실행하고 결과를 얻는다
컨텍스트 클래스는 실행 시에 현재 설정된 전략을 사용하여 작업을 수행
전략 패턴은 유니티에서 여러 가지 상황에 유용하게 활용될 수 있다
예를 들어, 적 캐릭터의 AI 동작을 구현할 때 다양한 전략을 사용하여 적의 행동 패턴을 다르게 설정할 수 있다
또는 플레이어의 스킬 시스템을 구현할 때도 전략 패턴을 사용하여 다양한 스킬을 관리하고 실행할 수 있다
전략 패턴은 코드의 재사용성과 유연성을 높여주며 코드의 응집도를 높이고 결합도를 낮춰 유지 보수와 확장성을 향상시킬 수 있다
'내일배움캠프_TIL' 카테고리의 다른 글
11월 22일 TIL (1) | 2023.11.23 |
---|---|
11월 21일 TIL (0) | 2023.11.21 |
11월 16일 TIL (0) | 2023.11.16 |
11월 15일 TIL (0) | 2023.11.15 |
11월 14일 TIL (0) | 2023.11.14 |