[디자인 패턴] 전략(Strategy) 패턴이란?
전략 패턴(strategy pattern) 또는 정책 패턴(policy pattern)은 실행 중에 알고리즘을 선택할 수 있게 하는 소프트웨어 디자인 패턴이다. 전략패턴은 다음과 같은 이점이 있다. 비슷한 동작을 하지만 다르게 구현되어 있는 행위(전략)들을 공통의 인터페이스를 구현하는 각각의 클래스로 구현하고, 동적으로 바꿀 수 있게 함 직접 행위에 대한 코드를 수정할 필요 없이 전략만 변경하여 유연하게 확장 1. 공통의 기능을 명시한 인터페이스를 생성한다. 2. 기능에 맞게 1번의 구현 클래스들을 생성한다. 3. Context 클래스 생성 및 인터페이스를 저장하는 메소드와 인터페이스의 메소드를 실행하는 메소드를 생성한다. 위의 UML을 보고 간단한 결제 시스템 예제를 통해 코드를 이해해보자. inter..