patterns/templatemethod/README.md

24 lines
1.3 KiB
Markdown
Raw Normal View History

2022-12-05 07:38:19 +00:00
# Шаблонный метод
Поведенческий паттерн проектирования, который определяет скелет алгоритма, перекладывая ответственность за некоторые его шаги на подклассы. Паттерн позволяет подклассам переопределять шаги алгоритма, не меняя его общей структуры.
Паттерн **Шаблонный Метод** задает «скелет» алгоритма в методе, оставляя определение реализации некоторых шагов субклассам. Субклассы могут переопределять некоторые части алгоритма без изменения его структуры.
## Принципы
- Не вызывайте нас - мы вас сами вызовем
Алгоритм определяется суперклассом, поэтому последний должен сам обращаться к субклассам, когда потребуется.
## Схемы
![scheme-1](scheme-1.png)
![scheme-2](scheme-2.png)
![scheme-3](scheme-3.png)
![scheme-4](scheme-4.png)
![scheme-5](scheme-5.png)