전략 패턴 (strategy pattern)
의존하는 객체가 자주 변하는 경우 Soldier(군인)이라는 클래스와 Gun(총)이라는 클래스가 있고, Soldier클래스는 Gun클래스를 의존하고 있다고 가정해봅시다. 이런 경우를 코드로 간략하게 나타내면 아래와 같습니다. class Soldier{ . . . Gun gun = new Gun(); . . . } 하지만 Soldier입장에서, 사용하는 무기가 Gun이 아닌 다른 경우가 존재 할 수 도 있습니다. 예를 들어, Sword(검)이라던지, Bow(활) 같은 경우입니다. 그럼 매번 의존하는 무기가 변경 될 때 마다 코드를 변경 해주어야 합니다. Soldier의 무기가 Sword로 변경 되어야 하는 경우 class Soldier{ . . . Sword sword = new Sword(); . . ...
Design Pattern
2019. 1. 23. 10:07