전략 패턴 여러 알고리즘들을 캡슐화하고 상호 교환 가능하게 만드는 패턴 컨텍스트에서 사용할 알고리즘들을 클라이언트에서 선택한다. 즉, 특정 업무를 수행하는 방법이 여러가지 일 경우 여러가지 방법들을 각각의 클래스로 캡슐화하면 캡슐화된 것을 공통 인터페이스로 추상화하여 업무를 수행하는 Client 에서는 공통 인터페이스를 사용하게 하여 Client 코드는 변경되지 않고도 여러 방법들을 바꿔 낄 수 있다. Context : 원래 로직을 수행하던 클래스 ConcreteStrategy : 각각의 알고리즘들이 구현된 클래스 Strategy : 추상화된 알고리즘 수행 인터페이스 전략 패턴 적용 전 "무궁화 꽃이 피었습니다" 를 실행하는 프로그램이 있다. 이 게임은 "무궁화 꽃이" 까지는 파란불이며, "피었습니다."..