[GoF] Strategy 패턴 : 알고리즘을 모두 바꾼다 [같은 문제를 다른 방법으로 해결하기 쉽게 만들어주는 패턴]
·
◈ Study/디자인패턴(GoF)🥞
- Strategy 패턴 : 알고리즘을 모두 바꾼다 Strategy 패턴은 스위치 전환하듯 알고리즘을 바꿔, 같은 문제를 다른 방법으로 해결하기 쉽게 만드는 패턴이다. - 어떤 경우에 사용할까? 보통 프로그래밍을 하다 보면 알고리즘을 메서드 안에 녹아드는 형태로 구현하기 쉬운데, Strategy 패턴을 사용하면 알고리즘 부분을 다른 부분과 의도적으로 분리한다. 이로 인해 알고리즘을 용이하게 전환할 수 있다. - 예제 코드 이름 설명 Hand 가위바위보의 '손'을 나타내는 클래스 Strategy 가위바위보의 '전략'을 나타내는 인터페이스 WinningStrategy 이기면 다음에도 같은 손을 내는 전략을 나타내는 클래스 ProbStrategy 직전 손에서 다음 손을 확률적으로 계산하는 전략을 나타내는 클래..