Template Method Design Pattern

"The Template design pattern is a design pattern that defines a basic structure for
solving a particular problem and allows for customization in its implementation."

Think of the template design pattern like a cooking recipe.

The recipe provides a basic structure for cooking a dish, with specific ingredients and steps to follow. But, you can always add your own touch by adding additional spices, or changing the cooking time to match your taste. In the same way, the template pattern provides a basic structure for solving a software problem, and the implementation details can be filled in by the developers.

The Template design pattern provides a clear separation between the structure of the solution and the implementation details, making it easy to maintain, test and reuse the code.