전략(Strategy) 패턴
2021. 12. 23. 11:17
기타 IT
전략 패턴이란? 동일한 기능의 알고리즘이 다를 경우 해당 알고리즘을 쉽게 변경하기 위한 패턴이다. DI를 활용한 방식으로 OCP에 특화되어, 변경에 용이하다. 전략 패턴을 사용하지 않으면 어떻게 안좋은데? 동일한 기능이나 알고리즘이 달라져 자주 변경이 된다면 보통 if-else로 많이 작성을 할 것이다. 어떤 상황인지 살펴 보자. 아래는 과일 가게에서 할인 정책을 적용해 가격을 계산하는 기능이다. 해당 모듈은 가격을 계산하는 모듈이다. 가격 계산과 할인 정책이 같이 들어가 있다. 아마 보통 이렇게 작성되어 있는 코드가 많을 것이다. 나도 회사에서 100% 이렇게 되어있다. public class Calculator { public int calculate(boolean firstGuest, List it..