🗊Презентация Паттерны проектирования: Шаблонный метод

Нажмите для полного просмотра!
Паттерны проектирования: Шаблонный метод, слайд №1Паттерны проектирования: Шаблонный метод, слайд №2Паттерны проектирования: Шаблонный метод, слайд №3Паттерны проектирования: Шаблонный метод, слайд №4Паттерны проектирования: Шаблонный метод, слайд №5Паттерны проектирования: Шаблонный метод, слайд №6Паттерны проектирования: Шаблонный метод, слайд №7Паттерны проектирования: Шаблонный метод, слайд №8Паттерны проектирования: Шаблонный метод, слайд №9Паттерны проектирования: Шаблонный метод, слайд №10Паттерны проектирования: Шаблонный метод, слайд №11Паттерны проектирования: Шаблонный метод, слайд №12Паттерны проектирования: Шаблонный метод, слайд №13Паттерны проектирования: Шаблонный метод, слайд №14Паттерны проектирования: Шаблонный метод, слайд №15Паттерны проектирования: Шаблонный метод, слайд №16Паттерны проектирования: Шаблонный метод, слайд №17Паттерны проектирования: Шаблонный метод, слайд №18Паттерны проектирования: Шаблонный метод, слайд №19Паттерны проектирования: Шаблонный метод, слайд №20Паттерны проектирования: Шаблонный метод, слайд №21Паттерны проектирования: Шаблонный метод, слайд №22Паттерны проектирования: Шаблонный метод, слайд №23

Содержание

Вы можете ознакомиться и скачать презентацию на тему Паттерны проектирования: Шаблонный метод. Доклад-сообщение содержит 23 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Паттерны проектирования: Шаблонный метод (Template Method)
МКД 03.01 «Технология разработки программного обеспечения»
Описание слайда:
Паттерны проектирования: Шаблонный метод (Template Method) МКД 03.01 «Технология разработки программного обеспечения»

Слайд 2





Определение
Шаблонный метод (Template method) — это поведенческий шаблон проектирования, который определяет алгоритм, некоторые методы которого делегируются подклассам, позволяя тем самым переопределить некоторые шаги алгоритма не меняя его структуры.
Описание слайда:
Определение Шаблонный метод (Template method) — это поведенческий шаблон проектирования, который определяет алгоритм, некоторые методы которого делегируются подклассам, позволяя тем самым переопределить некоторые шаги алгоритма не меняя его структуры.

Слайд 3





Назначение паттерна 
Шаблонный метод
Паттерн Template Method определяет основу алгоритма и позволяет подклассам изменить некоторые шаги этого алгоритма без изменения его общей структуры.
Базовый класс определяет шаги алгоритма с помощью абстрактных операций, а производные классы их реализуют.
Описание слайда:
Назначение паттерна Шаблонный метод Паттерн Template Method определяет основу алгоритма и позволяет подклассам изменить некоторые шаги этого алгоритма без изменения его общей структуры. Базовый класс определяет шаги алгоритма с помощью абстрактных операций, а производные классы их реализуют.

Слайд 4





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

Слайд 5





Обсуждение паттерна
Проектировщик компонента решает, какие шаги алгоритма являются неизменными (или стандартными), а какие изменяемыми (или настраиваемыми). Абстрактный базовый класс реализует стандартные шаги алгоритма и может предоставлять (или нет) реализацию по умолчанию для настраиваемых шагов. Изменяемые шаги могут (или должны) предоставляться клиентом компонента в конкретных производных классах.
Проектировщик компонента определяет необходимые шаги алгоритма, порядок их выполнения, но позволяет клиентам компонента расширять или замещать некоторые из этих шагов.
Паттерн Template Method широко применяется в каркасах приложений (frameworks). Каждый каркас реализует неизменные части архитектуры в предметной области, а также определяет те части, которые могут или должны настраиваться клиентом. Таким образом, каркас приложения становится "центром вселенной", а настройки клиента являются просто "третьей планетой от Солнца". Эту инвертированную структуру кода ласково называют принципом Голливуда - "Не звоните нам, мы сами вам позвоним".
Описание слайда:
Обсуждение паттерна Проектировщик компонента решает, какие шаги алгоритма являются неизменными (или стандартными), а какие изменяемыми (или настраиваемыми). Абстрактный базовый класс реализует стандартные шаги алгоритма и может предоставлять (или нет) реализацию по умолчанию для настраиваемых шагов. Изменяемые шаги могут (или должны) предоставляться клиентом компонента в конкретных производных классах. Проектировщик компонента определяет необходимые шаги алгоритма, порядок их выполнения, но позволяет клиентам компонента расширять или замещать некоторые из этих шагов. Паттерн Template Method широко применяется в каркасах приложений (frameworks). Каждый каркас реализует неизменные части архитектуры в предметной области, а также определяет те части, которые могут или должны настраиваться клиентом. Таким образом, каркас приложения становится "центром вселенной", а настройки клиента являются просто "третьей планетой от Солнца". Эту инвертированную структуру кода ласково называют принципом Голливуда - "Не звоните нам, мы сами вам позвоним".

Слайд 6





UML-диаграмма паттерна
Описание слайда:
UML-диаграмма паттерна

Слайд 7





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

Слайд 8





Пример паттрена Template Method
Описание слайда:
Пример паттрена Template Method

Слайд 9





Использование паттерна
Исследуйте алгоритм и решите, какие шаги являются стандартными, а какие должны определяться подклассами.
Создайте новый абстрактный базовый класс, в котором будет реализован принцип "не звоните нам, мы сами вам позвоним".
Поместите в новый класс основу алгоритма (шаблонный метод) и определения стандартных шагов.
Для каждого шага, требующего различные реализации, определите "замещающий" виртуальный метод. Этот метод может иметь реализацию по умолчанию или быть чисто виртуальным.
Вызовите "замещающий" метод из шаблонного метода.
Создайте подклассы от нового абстрактного базового класса и реализуйте в них "замещающие" методы.
Описание слайда:
Использование паттерна Исследуйте алгоритм и решите, какие шаги являются стандартными, а какие должны определяться подклассами. Создайте новый абстрактный базовый класс, в котором будет реализован принцип "не звоните нам, мы сами вам позвоним". Поместите в новый класс основу алгоритма (шаблонный метод) и определения стандартных шагов. Для каждого шага, требующего различные реализации, определите "замещающий" виртуальный метод. Этот метод может иметь реализацию по умолчанию или быть чисто виртуальным. Вызовите "замещающий" метод из шаблонного метода. Создайте подклассы от нового абстрактного базового класса и реализуйте в них "замещающие" методы.

Слайд 10





Приготовление двух блюд
Описание слайда:
Приготовление двух блюд

Слайд 11





Класс 
Hamburger
Описание слайда:
Класс Hamburger

Слайд 12





Класс 
HotDog
Описание слайда:
Класс HotDog

Слайд 13





 Класс FastFood
Описание слайда:
Класс FastFood

Слайд 14





Абстрактный класс FastFood
Описание слайда:
Абстрактный класс FastFood

Слайд 15





Изменения в класса-наследниках
Описание слайда:
Изменения в класса-наследниках

Слайд 16





Изменения в абстрактном классе FastFood
Описание слайда:
Изменения в абстрактном классе FastFood

Слайд 17





Итоговый класс-наследник Hamburger
Описание слайда:
Итоговый класс-наследник Hamburger

Слайд 18





Итоговый класс-наследник HotDog
Описание слайда:
Итоговый класс-наследник HotDog

Слайд 19





Класс FastFood: новый метод для реализации выбора
Описание слайда:
Класс FastFood: новый метод для реализации выбора

Слайд 20





Изменение в классе-наследнике: возможность выбора
Описание слайда:
Изменение в классе-наследнике: возможность выбора

Слайд 21





Определение
Шаблонный Метод определяет основу алгоритма и позволяет подклассам переопределять некоторые шаги алгоритма, не изменяя его структуру в целом. 
Шаблонный метод – это каркас, в который наследники могут подставить свои реализации
Описание слайда:
Определение Шаблонный Метод определяет основу алгоритма и позволяет подклассам переопределять некоторые шаги алгоритма, не изменяя его структуру в целом. Шаблонный метод – это каркас, в который наследники могут подставить свои реализации

Слайд 22





Диаграмма классов 
«Шаблонный метод»
Описание слайда:
Диаграмма классов «Шаблонный метод»

Слайд 23





Спасибо за внимание!
Паттерны проектирования: Шаблонный Метод (Template Method)
Описание слайда:
Спасибо за внимание! Паттерны проектирования: Шаблонный Метод (Template Method)



Похожие презентации
Mypresentation.ru
Загрузить презентацию