Definir el esqueleto del algoritmo en la operación y retrasar algunos pasos para la implementación de la subclase, de modo que una subclase pueda redefinir los pasos específicos del algoritmo sin cambiar la estructura del algoritmo.
Objeto
Clase abstracta: define operaciones atómicas abstractas (operaciones de gancho); implementa un método de plantilla como el esqueleto del algoritmo
Clase específica: realizar operación atómica
Escena aplicable
Implementar la parte invariante del algoritmo de una sola vez
Los comportamientos comunes en cada subclase deben extraerse y concentrarse en una clase principal común para evitar la duplicación de código.