자바 디자인패턴(1), 전략 패턴(Strategy pattern)
전략 패턴(Strategy pattern) 여러 알고리즘을 하나의 추상적인 접근점(인터페이스)을 만들어서 접근점에서 서로 교환 가능하게 만든다. 클라이언트는 전략을 소유하고 있다. 전략은 각각 A, B, C가 있고, Strategy는 인터페이스로 구현한다. 클라이언트는 Strategy를 직접 호출해 StrategyA, StrategyB, StrategyC를 모두 사용할 수 있다. 요구 사항 신작 게임에서 캐릭터와 무기를 구현해보기 - 무기는 '칼', '검' 두 종류가 있다. => 칼과 검은 각각 알고리즘의 대상이되어 무기는 하나의 인터페이스로 존재할 수 있다. 따라서 이는 전략패턴으로 구현할 수 있다. 무기 인터페이스 선언 // Weapon.java public interface Weapon { publ..
2022.09.30