Notice
Recent Posts
Recent Comments
Link
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
Tags
more
Archives
Today
Total
관리 메뉴

MyPrograming

Strategy Pattern (전략 패턴) 본문

Java/Design Pattern

Strategy Pattern (전략 패턴)

SeongWon 2022. 1. 27. 15:27
반응형

Strategy Pattern (전략패턴) 이란?

행위를 클래스로 캡슐화해 동적으로 행위를 자유롭게 바꿀 수 있게 해주는 패턴

 

같은 문제를 해결하는 여러 알고리즘이 클래스별로 캡슐화되어 있고, 이들이 필요할 때 교체할 수 있도록 함으로써 동일한 문제를 다른 알고리즘으로 해결할 수 있게 하는 디자인 패턴으로 '행위 패턴' 의 하나이다.

 

 

즉, 전략을 쉽게 바꿀 수 있도록 해주는 디자인 패턴이다.

여기서 전략이란 어떤 목적을 달성하기 위해 일을 수행하는 방식, 비지니스 규칙, 문제를 해결하는 알고리즘 등을 말한다.

 

전략 패턴의 특징

  • 각 행동을 모듈화해서 독립적이고 상호 교체 가능하게 만듦
  • strategy, context, client 의 세 요소로 구성
  • client 에서 strategy 객체를 생성해 context에 주입하는 패턴
  • 자바에서는 단일 상속만 지원하기 때문에, 템플릿 메서드보다 전략 패턴을 많이 사용함
  • OCP, DIP 활용한 설계 패턴

 

 

반응형

'Java > Design Pattern' 카테고리의 다른 글

Proxy Pattern (프록시 패턴)  (0) 2022.01.27
Factory Pattern (팩토리 패턴)  (0) 2022.01.27