1. 전략 패턴 1.1. 전략 패턴이란? 전략 패턴은 프로그램 수행 중에 알고리즘을 선택할 수 있도록 만든 패턴입니다. 선택할 알고리즘이 바로 '전략(Strategy)'이 되는것이죠. 👏 그리고 이 전략을 선택하는 주체인 '컨텍스트(Context)'가 필요합니다. Context는 문맥이란 뜻인데요. 아마도 맥락에 따라 서로 다른 전략을 선택하기 때문에 붙은 이름이 아닐까 싶습니다. 👀 Context는 전략을 수행하는 객체라고 봐도 무방할 것 같네요. 마지막으로 Context에 Strategy를 주입해주는 '클라이언트(Client)'가 필요합니다. Context가 직접 전략을 선택하지 못하기 때문이죠. 따라서 클라이언트가 Context에게 문맥에 맞는 Strategy를 '주입(DI:Dependancy In..