: 실행과정, 단계는 동일한데 각 단계 중 일부의 구현이 다른 경우에 사용할 수 있는 패턴 > 1. 실행 과정을 구현한 상위 클래스 실행 과정의 일부 단계를 구현한 하위 클래스 일부 구현이 다른 부분에 보통 추상 메서드로 구현한다. 객체를 생성하는 단계에서는 동일한 내용을 구현함. 이 때 모든 하위 타입에 동일하게 적용되는 실행 과정을 제공하기 때문에, 이 메서드를 템플릿 메서드라고 부란다. 이는 코드 중복문제 제거 + 코드 재사용 가능하게 함. 상위 클래스가 흐름 제어 주체 일반적인 경우 하위 타입이 상위 타입의 기능을 재사용할지 여부를 결정한다. 하지만 템플릿 메서드는 상위 클래스에서 흐름 제어를 한다. > 이렇게 상위 클래스에서 실행 시점이 제어되고, 기본 구현을 제공하면서, 하위 클래스에서 알맞게 확장할 수 있는 메서드를 '훅 메서드'라고 한다. 템플릿 메서드와 전략 패턴의 조합 두 패턴을 함께 사용하면 상속이 아닌 조립의 방식으로 템플릿 메서드