#1. [개체지향 원칙] 5대 원칙(SOLID)
좋은 설계는 유지보수의 편의성을 위하여
좋은 설계는 유지보수의 편의성을 위하여
Visitor는 개체를 수정하지 않고도 새로운 기능을 추가할 수 있게 합니다.
Template Method는 부모 개체에서 대략의 뼈대를 구현하여 뼈대 동작을 정규화하고, 자식 개체에서는 최소의 구현만 하게 합니다.
Strategy는 알고리즘이나 기능등의 전략을 캡슐화하고 런타임에 변경할 수 있게 만들어 줍니다. 외부에서 동작을 결정하고 변경할 수 있어 확장성이 향상됩니다.
State는 내부 상태에 따라 다른 동작 방법을 제공합니다. 상태를 처리하는 코드들이 응집되어 상태 처리가 비교적 단순해 집니다.