728x90 Template Method 썸네일형 리스트형 [디자인패턴][행위패턴] 템플릿 메서드 - C++ [모던 C++ 디자인 패턴] 책을 바탕으로 공부하는 내용을 정리한 내용이다. Template Method 전략 패턴과 매우 유사하다. 차이점은 전략 패턴이 컴포지션을 이용하는 데 반해 템플릿 메서드 패턴은 상속을 이용한다는 것이다. 하지만 핵심 원리는 어떤 알고리즘의 골격을 한 곳에 정의해 두고 상세 구현을 다른 곳에 둔다는 점에서 동일하다. 이 부분은 시스템 확정 측면에서 OCP 원칙을 준수하는 것이다. 게임 시뮬레이션 보드 게임을 예로 들어 아래와 같이 알고리즘을 정의해보자. 게임 실행 시에는 run() 메서드는 다른 메서드를 호출할 뿐이다. 그 메서드들은 퓨어 버추얼이면서 protected이기 땜누에 다른 쪽에서 호출할 수는 없다. class Game { private: void run() { st.. 더보기 이전 1 다음