[DesignPattern] StrategyPattern, 전략패턴

LimJaeJun·2023년 7월 30일

DesignPattern

목록 보기
1/15

전략패턴 - StrategyPattern

🔥 전략패턴이란?

알고리즘 군을 정의하고 캡슐화해서 각각의 알고리즘군을 수정해서 쓸 수 있게 해준다.
전략 패턴을 사용하면 클라이언트로부터 알고리즘을 분리해서 독립적으로 변경할 수 있다.

📌 디자인 원칙1

달라지는 부분을 찾아내고, 달라지지 않는 부분과 분리한다.
달라지는 부분을 찾아 나머지 코드에 영향을 주지 않도록 캡슐화한다.

📌 디자인 원칙2

구현보다는 인터페이스에 맞춰서 프로그래밍한다.

📌 디자인 원칙3

상속보다는 구성을 활용한다.
두 클래스를 합치는 것을 구성(Composition) 이라고 한다.

📄 클래스 다이어그램

클래스 다이어그램에 있는 각 클래스들이 어떤 관계인지 구상해보자.
Strategy Class Diagram


📚 참고문헌

  • HeadFirst DesignPattern - 한빛미디어
profile
Dreams Come True

1개의 댓글

comment-user-thumbnail
2023년 7월 30일

잘 봤습니다. 좋은 글 감사합니다.

답글 달기