Технология разработки программного обеспечения (вторая часть). Структурные шаблоны проектирования ПО
Содержание
- 2. 2. Структурные паттерны Описывают способы построение сложных структур из классов и объектов. Adapter Bridge Façade Composite
- 3. Паттерн Adapter (Адаптер) Цель паттерна Adapter (адаптер) – привести (адаптировать) интерфейс некоторого адаптируемого класса к интерфейсу,
- 4. Причина возникновения паттерна Проблема: имеется некоторый класс, который нужно использовать в необычной для его структуры задаче.
- 5. Причина возникновения паттерна Решение выполняется классом NetView, который агрегирует множество объектов типа IPEndPoint. Нужно выполнить графическое
- 6. Проблема в том, что класс NetView не имеет интерфейса, специфичного для объекта графической подсистемы поэтому не
- 7. Структура паттерна Adapter
- 8. Участвующие элементы Client - класс, который использует некоторые вспомогательные типы данных и ожидает, что они имеют
- 9. Приведение интерфейса выполняется за счёт того, что класс Adapter наследует оба класса Adaptee и Target значит,
- 10. Диаграмма последовательности
- 11. Альтернативный способ
- 12. Отличие от предыдущей структуры Классы Adapter и Adaptee находятся не в отношении родства, а в отношении
- 14. Основной результат использования паттерна Adapter Позволяет гибко преобразовать интерфейс некоторого класса к интерфейсу, ожидаемому приложением без
- 15. Основной результат использования паттерна Adapter (2) Увеличивает гибкость и масштабируемость создаваемых приложений за счёт модульной структуры
- 16. Пример использования паттерна Есть приложение, выполняющее управление товарооборотом предприятия; Используется тип данных Product (продукт/товар), который будет
- 17. Класс ProductXmlIOAdapter, Для записи в файл коллекции продуктов создается класс ProductXmlIOAdapter инкапсулирует коллекцию продуктов, выполняет приведение
- 18. Устранение избыточности Устранение избыточности необходимо постольку, поскольку класс Product может использоваться при приведении информации о продуктах,
- 19. Диаграмма классов, иллюстрирующая приложение
- 20. Прототип Адаптер
- 27. Паттерн Façade (Фасад) Паттерн Façade (Фасад ) применяется, когда нужно предоставить простой специализированный интерфейс к группе
- 28. Класс Db Накладывает очень простой интерфейс, специфичный для ProductData, на сложные общие интерфейсы классов из пространства
- 29. Класс DB, являющийся частным случаем Фасада – определяет политику использования System.Data. Класс DB описывает: как открыть
- 30. С точки зрения Application пространства имен System.Data вообще не существует, оно скрыто за Фасадом. Использование паттерна
- 31. Паттерн Mediator (Посредник) Например, класс QuickEntryMediator находится за сценой и привязывает текстовое поле ввода к списку.
- 32. Класс QuickEntryMediator Принимает объекты TextBox и ListBox. Предполагается, что пользователь будет вводить в TextBox префиксы строк,
- 33. Kласс QuickEntryMediator using System; using System.Windows.Forms; public class QuickEntryMediator { private TextBox itsTextBox; private ListBox itsList;
- 34. Структура класса QuickEntryMediator Конструктору экземпляра QuickEntryMediator передаются ссылки на ListBox и TextBox. QuickEntryMediator назначает обработчик события
- 35. Выводы Накладывать политику можно сверху, используя паттерн Фасад, если эта политика должна быть явной. если необходима
- 36. Заместитель и Шлюз: управление сторонними API
- 37. Паттерн Заместитель
- 67. Паттерн Bridge (мост) Цель паттерна Bridge («мост») – отделить абстракцию от её реализации, чтобы они могли
- 68. Причины возникновения паттерна Обычно, когда некоторая абстракция (обычно абстрактный класс) может иметь несколько конкретных реализаций, используют
- 69. Причины возникновения паттерна (2) Прямое наследование интерфейса абстракции некоторым конкретным классом связывает реализацию с абстракцией напрямую
- 70. Структура паттерна Bridge
- 71. Участники паттерна Bridge Abstraction (абстракция) - определяет интерфейс абстракции, а также содержит объект исполнителя, который определяет
- 72. Преимущество использование паттерна Bridge (Мост) Выполняется логическое и структурное разделение абстракции от её реализации, что делает
- 73. Пример использования паттерна Bridge Смешанный графический редактор – позволяет совместно, в рамках одного представления, редактировать растровую
- 74. Модель описанного выше приложения
- 75. Паттерн Composite (Компоновщик) Паттерн Composite (Компоновщик) – очень простой паттерн, имеющий широкое применение. Например, есть иерархия
- 76. Пример паттерна Composite (Компоновщик) В классе CompositeShape хранится список объектов типа Shape. метод Draw() в этом
- 77. Реализация класса CompositeShape public interface Shape { void Draw(); } using System.Collections; public class CompositeShape :
- 78. Составные команды Ранее рассматривались объекты Sensor и Command. Обнаружив событие, объект-датчик Sensor вызывал метод Do() ассоциированного
- 83. Скачать презентацию
















































































ИНФОРМАТИКА 11
Базовая обработка изображений
Электронные таблицы. Основные параметры электронных таблиц
Допродажа услуг
Лаборатория программирования и баз данных
Сравнение платформ создания сайтов
Условный оператор, оператор выбора. Процедуры вводы-вывода. Логические операции в Паскале, таблицы истинности. Лекция 5
Защита информации
Clover Platform. Назначение и основные функции платформы
Смешарики
Структура документа HTML
Решение задач на составление разветвляющихся алгоритмов
Коробочные продукты или стандартизированные решения типичных проблем бизнеса
История развития вычислительной техники (лекция 2)
Кредитный конфигуратор. Архитектура
Передача и коммутация данных в компьютерных сетях. Часть 1. Лекция 3
Введение в ГиперМетод
Функции электронных таблиц Microsoft Excel
Маруся на уроках английского языка
Программирование на языке Си. Линейные программы
Создание сайта на tilda
Check Point CheckUP. Бесплатный аудит безопасности вашей сети
Метрология и теория измерений
Мастер-класс Монтаж звука
Раскрывающиеся блоки для сайта praesens.ru
Диаграмма компонентов
Кодирование и шифрование данных
Больше лайков мальчикам, или как гендерные стереотипы воспроизводятся в соцсетях