Шаблон проектирования метода шаблона - это шаблон проектирования поведения, который касается алгоритмов и распределения обязанностей между объектами, как и все шаблоны, попадающие в эту категорию.

Особенность поведенческих паттернов проектирования заключается в том, что они описывают не только паттерны объектов и классов, но и паттерны взаимодействия между ними. Возможно, вы слышали об инкапсуляции создания объектов, вызова методов и других сложных интерфейсов.

Возможно, вы не слышали об инкапсулировании алгоритмов. Все дело в шаблоне проектирования метода шаблона. В этой статье мы обсудим, что такое шаблон проектирования шаблонного метода, почему он используется, и простой пример шаблона проектирования шаблонного метода на Java, чтобы продемонстрировать его вариант использования.

Что такое шаблон проектирования метода шаблонов?

Шаблон проектирования метода шаблона - это шаблон проектирования, который обеспечивает абстрактное определение алгоритма с помощью абстрактного метода, называемого методом шаблона.

Как и большинство поведенческих шаблонов проектирования, шаблон проектирования методов использует наследование для распределения поведения между классами. В этом шаблоне каждый шаг вызывает абстрактную или примитивную операцию. Подкласс предоставляет дополнительные детали алгоритму, определяя абстрактные операции.

Итак, какова цель шаблона проектирования метода шаблона? Намерение состоит в том, чтобы определить каркас алгоритма, отложив некоторые шаги до подклассов, то есть он позволяет подклассам определять определенные шаги алгоритма по-своему, сохраняя структуру алгоритма нетронутой.

Читайте также: « Шаблон проектирования Singleton - вдумчивое погружение в структуры и создание объектов »

Зачем нам нужен шаблон проектирования шаблонного метода?

Используя шаблоны проектирования, такие как шаблон проектирования метода шаблонов, мы можем уменьшить избыточность кода. Скоро мы увидим такой пример. Шаблонные методы - это основные методы повторного использования кода.

Если нам нужно разработать фреймворк или библиотеку, очевидно, что у классов, имеющих схожую структуру и назначение, будет общее поведение, и чтобы справиться с этим, нам понадобится шаблон проектирования, подобный этому.

В нашем случае шаблонные методы - это средство выделения общего поведения в библиотечных классах и фреймворках. Если вы когда-либо использовали фреймворки, такие как angular, вы наверняка сталкивались с внедрением функций в контроллеры, то есть использовали их только при необходимости или «подключали» их, и это будет вызываться самим angular. Такие шаблоны приводят к принципу: «Не звоните нам, мы вам позвоним».

Системы, разработанные с использованием таких шаблонов, позволяют компонентам низкого уровня подключаться к системе, а компоненты высокого уровня определяют, когда и как они необходимы. Это относится к тому, как родительский класс вызывает операции подкласса, а не наоборот.

Читайте также: « Все, что вам нужно знать о шаблонном методе разработки шаблона »

Давайте посмотрим на пример шаблона проектирования метода Template в java.

Шаблон разработки метода шаблона Пример Java

Мы воспользуемся очень простым примером приготовления сока из манго и апельсина. Алгоритмы просты и написаны как вызовы методов в соответствующих классах.

Сначала мы сделаем это любительским способом, а затем посмотрим, как шаблонный метод может абстрагировать некоторые алгоритмические функции из предполагаемых классов.

1. Класс OrangeJuice

Fig- пример шаблона метода проектирования шаблона java - Simple Orange Juice Class

Как видите, в методе prepareRecipe есть пять вызовов методов, которые имеют «алгоритм» приготовления апельсинового сока.

Прочтите статью полностью: https://www.decipherzone.com/blog-detail/template-method-design-pattern