Strategy
-
[GoF]전략 패턴(Strategy)Gof Design Pattern 2021. 12. 10. 16:38
전략 패턴(Strategy) 전략 패턴이란? 상황에 따라 전략이나 알고리즘을 교체하여 사용하는 패턴이다. 전략 왜 사용할까? 다양한 알고리즘(혹은 기능)이 존재할 때, 하나의 클래스로 캡슐화 하여 대체가 가능하도록 할 수 있습니다. 새로운 전략을 반영하거나 기존 전략을 삭제할 때 독립적으로 수행되기에 서로 영향을 끼치지 않습니다. 예를 들어 if-else로 같은 내용이 반복적으로 사용되는 경우 전략 패턴 사용을 고려할 수 있습니다. 전략 패턴을 사용하게 되면 인터페이스에 선언된 기능을 구현한 다양한 정책을 다른 클래스에 영향을 주지 않고 추가, 삭제 할 수 있다. if-else 조건문을 구현하는 것이 아닌 전략 패턴을 사용하여 클래스를 선택하도록 구현하여 유지보수가 용이해진다. 클래스 다이어그램 객체 협..