문제
하나의 인터페이스에 여러 개의 구현체를 제공하되, 런타임에 조건에 따라 적절한 구현체를 선택하여 사용할 수 있도록 하는 GoF 행위 패턴은 무엇인가?
정답
전략 패턴
전략 패턴StrategyStrategy Pattern전략
해설
전략 패턴(Strategy Pattern)은 알고리즘군을 정의하고 각각을 캡슐화하여 상호 교환 가능하게 만드는 패턴이다. 클라이언트와 독립적으로 알고리즘을 변경할 수 있으며, 조건문을 사용하지 않고도 런타임에 적절한 알고리즘을 선택할 수 있다. Context 클래스가 Strategy 인터페이스를 통해 ConcreteStrategy를 사용하는 구조이다.