Similar presentations:
Паттерн «Фасад»
1.
ПАТТЕРН «ФАСАД»ВЫПОЛНИЛА ТЯГНИРЕНКО ЯНА
УЧЕНИЦА ГРУППЫ 23-106
2.
НАЗВАНИЕ ПАТТЕРНА• «Фасад» — это структурный паттерн проектирования, который
предоставляет простой интерфейс сложной системе классов,
библиотеке или фреймворку.
• В обычной жизни фасад — это наружная часть здания, за
которой прячется всё его содержимое: стены и перегородки,
утепление, трубы, провода и прочее.
• Паттерн «Фасад» (Facade) назван так из-за его функции —
красиво «облицевать» код.
3.
НАЗНАЧЕНИЕ ПАТТЕРНА• Паттерн Фасад упрощает взаимодействие с подсистемой,
предоставляя единый интерфейс, скрывающий ее внутреннюю
сложность. Он позволяет клиентам взаимодействовать с
комплексной подсистемой без необходимости знать
подробности ее реализации.
4.
ОБЩЕЕ ОПИСАНИЕ ПАТТЕРНА• Фасад — это объект, который предоставляет упрощенный
интерфейс к набору существующих объектов (подсистеме). Он
выступает в роли посредника, скрывая от пользователя детали
реализации подсистемы и предоставляя более простой,
удобный интерфейс для работы с ней.
5.
ОБЩЕЕ ОПИСАНИЕ ПАТТЕРНА• Представьте себе сложный механизм, например, автомобиль. У
него есть множество частей: двигатель, коробка передач,
тормозная система, и каждая из них имеет свои настройки и
функции. Чтобы управлять автомобилем, вам не нужно знать,
как работает каждая из этих частей. Вы просто используете
руль, педали и рычаг переключения передач.
• Фасад — это как руль, педали и рычаг переключения передач
для сложной подсистемы.
6.
СТРУКТУРА ПАТТЕРНА В ВИДЕ UMLДИАГРАММЫ КЛАССОВ7.
РЕАЛИЗАЦИЯ ПАТТЕРНА С ПРИМЕРАМИКОДА НА C#
8.
РЕАЛИЗАЦИЯ ПАТТЕРНА С ПРИМЕРАМИКОДА НА C#
9.
РЕАЛИЗАЦИЯ ПАТТЕРНА С ПРИМЕРАМИКОДА НА C#
10.
РЕАЛИЗАЦИЯ ПАТТЕРНА С ПРИМЕРАМИКОДА НА C#
11.
ПОСЛЕДСТВИЯ ПРИМЕНЕНИЯ ПАТТЕРНАПреимущества:
1. Упрощение использования: Скрывает сложность подсистемы,
предоставляя единый интерфейс.
2. Улучшение модульности: Разделяет подсистему от клиента, делая ее
более независимой.
3. Снижение зависимостей: Клиент взаимодействует только с Фасадом, а
не с отдельными объектами подсистемы.
4. Упрощение тестирования: Можно тестировать Фасад независимо от
подсистемы.
12.
ПОСЛЕДСТВИЯ ПРИМЕНЕНИЯ ПАТТЕРНАНедостатки:
1. Дополнительный уровень абстракции: Может сделать код более
сложным, если используется неоправданно.
2. Ограничение гибкости: Может ограничивать доступ к отдельным
объектам подсистемы.
13.
ПАТТЕРН «ФАСАД»ВЫПОЛНИЛА ТЯГНИРЕНКО ЯНА
УЧЕНИЦА ГРУППЫ 23-106