전략패턴1 [디자인 패턴] 전략(Strategy) 패턴 전략 패턴(Strategy Pattern) 행위를 클래스로 캡슐화하여 동적으로 행위를 자유롭게 해주는 패턴 객체의 행위를 동적으로 변경하고 싶은 경우 직접 행위를 수행하지 않고 전략을 바꾸어주기만 함으로써 행위를 유연하게 확정하는 방법 예시(Example) *Class Diagram 부모클래스 (Duck) 과 자식클래스 (MallardDuck, RedheadDuck) *Example Code Question 만약 RedheadDuck이 울음소리를 내지 못한다면? -> RedheadDuck의 Quack()을 수정해야함 만약 MallardDuck이 날지 못한다면? -> MallardDuck의 fly()를 수정해야함 문제점 기존코드를 수정해야하 하므로 OCP에 위배됨. 클래스가 확장될 경우 중복 메소드가 생길.. 2021. 4. 26. 이전 1 다음