Рабочие листы
к вашим урокам
Скачать
1 слайд
UML
Паттерны проектирования
Преподаватель: Галинова Анна Александровна
2 слайд
Проектирование
Процесс составления описания, необходимого для создания в заданных условиях еще не существующего объекта
по первичному описанию этого объекта путем его детализации, дополнения, расчетов и оптимизации.
02.12.2022
UML и паттерны проектирования
2
3 слайд
UML
Диаграммы
4 слайд
Определение UML
UML - язык графического описания для объектного моделирования.
Цель UML — визуально представить диаграммы, которые легко понять каждому.
Не является языком программирования, но на основании UML-моделей возможна генерация кода.
02.12.2022
UML и паттерны проектирования
4
5 слайд
Определение UML
Словарь UML включает три вида строительных блоков
Диаграммы
Сущности
Связи
Сущности – это абстракции, которые являются основными элементами модели, связи соединяют их между собой,
а диаграммы группируют представляющие интерес наборы сущностей.
02.12.2022
UML и паттерны проектирования
5
6 слайд
Типы диаграмм
02.12.2022
UML и паттерны проектирования
6
7 слайд
Диаграмма классов
Центральная методика моделирования, которая используется практически во всех объектно-ориентированных методах.
Эта диаграмма описывает типы объектов в системе и различные виды статических отношений, которые существуют между ними.
02.12.2022
UML и паттерны проектирования
7
8 слайд
Что такое класс
02.12.2022
UML и паттерны проектирования
8
Класс - шаблон для создания объектов.
Он обеспечивает начальные значения состояний объектов:
инициализацию полей-переменных
реализацию поведения полей и методов.
9 слайд
Класс описывает то,
каким объект может быть
02.12.2022
UML и паттерны проектирования
9
10 слайд
02.12.2022
UML и паттерны проектирования
10
Класс описывает то,
каким объект может быть
11 слайд
Переведем класс DOG в UML
02.12.2022
UML и паттерны проектирования
11
Верхняя секция: имя класса
Средняя секция:
свойства песика
(атрибуты класса)
Нижняя секция:
что может делать песик
(методы или операции класса)
12 слайд
Диаграмма классов
02.12.2022
UML и паттерны проектирования
12
Наиболее распространенная при разработке ПО.
Похожа на блок-схему, потому что классы представлены в виде блоков.
Предлагает визуальное представление о различных классах и о том, как они взаимосвязаны.
13 слайд
Из чего состоит блок
02.12.2022
UML и паттерны проектирования
13
Верхняя секция: имя класса
Средняя секция: атрибуты класса
Нижняя секция:
методы или операции класса
14 слайд
Из чего состоит блок
02.12.2022
UML и паттерны проектирования
14
Атрибуты класса:
Тип атрибута отображается после двоеточия.
Атрибуты сопоставляются с переменными в коде.
15 слайд
Из чего состоит блок
02.12.2022
UML и паттерны проектирования
15
Классовые операции (методы):
Это действия, предоставляемые классом.
Возвращаемый тип параметров метода отображается после двоеточия после имени параметра.
Операции сопоставляются с методами класса в коде.
16 слайд
Классовые отношения
02.12.2022
UML и паттерны проектирования
16
Класс может быть вовлечен в одно или несколько отношений с другими классами
17 слайд
Наследование
02.12.2022
UML и паттерны проектирования
17
Это схематическое изображение отношения между родительским классом и его наследниками.
18 слайд
Ассоциация
02.12.2022
UML и паттерны проектирования
18
Связь классов.
19 слайд
Реализация
02.12.2022
UML и паттерны проектирования
19
Отношение интерфейса и объектов, реализующих этот интерфейс.
20 слайд
Зависимость
20
Объект одного класса может использовать объект другого класса
в своем методе.
02.12.2022
UML и паттерны проектирования
21 слайд
Агрегация
21
Когда один класс является частью другого.
02.12.2022
UML и паттерны проектирования
22 слайд
Композиция
22
Разновидность агрегации, только в этом случае, классы, являющиеся частью другого класса, уничтожают, когда уничтожается класс-агрегатор.
Например наше тело состоит из органов, но сами по себе они не жизнеспособны.
02.12.2022
UML и паттерны проектирования
23 слайд
Имена отношений
23
02.12.2022
UML и паттерны проектирования
24 слайд
Шаблон проектирования
или - паттерн
25 слайд
Определение паттерна
Паттерн – повторяющийся элемент в различных сферах жизни.
Паттерн (психология) – набор стереотипных поведенческих реакций или последовательности действий.
Паттерн (информатика) – эффективный способ решения характерных задач проектирования.
25
02.12.2022
UML и паттерны проектирования
26 слайд
Определение паттерна
Паттерн – повторимая архитектурная конструкция, представляющая собой решение проблемы проектирования в рамках некоторого часто возникающего контекста.
Паттерн описывает задачу, которая часто возникает в работе, а также способ её решения.
Данное решение можно потом использовать много раз и не изобретать ничего заново.
26
02.12.2022
UML и паттерны проектирования
27 слайд
Паттерн и архитектура
Архитектура приложения — это логическая структура, описывающая отдельные компоненты, их свойства и связи в виде единой системы.
Паттерны — это описания схем детализации отдельных подсистем приложения и взаимосвязей между ними.
При этом паттерны не являются частью программы, не влияют прямо на ее структуру и сохраняют полную независимость от языка программирования конкретной системы.
27
02.12.2022
UML и паттерны проектирования
28 слайд
Основные элементы паттерна
Имя
Описывает проблему проектирования,
её решения
и последствия.
Задача
Описание того, когда следует применять паттерн.
Решение
Описание элементов дизайна, отношений между ними, функций каждого элемента.
Результаты
Следствия применения паттерна и разного рода компромиссы.
28
02.12.2022
UML и паттерны проектирования
29 слайд
Какие бывают паттерны
Порождающие
Структурные
Поведенческие
29
02.12.2022
UML и паттерны проектирования
30 слайд
Порождающие паттерны
Описывают создание объекта
или группы связанных объектов.
Простая фабрика (Simple Factory)
Фабричный метод (Factory Method)
Абстрактная фабрика (Abstract Factory)
Строитель (Builder)
Прототип (Prototype)
Одиночка (Singleton)
30
02.12.2022
UML и паттерны проектирования
31 слайд
Структурные паттерны
Компоновка объектов – как сущности могут использовать друг друга.
Адаптер (Adapter)
Мост (Bridge)
Компоновщик (Composite)
Декоратор (Decorator)
Фасад (Facade)
Приспособленец (Flyweight)
Заместитель (Proxy)
31
02.12.2022
UML и паттерны проектирования
32 слайд
Поведенческие паттерны
Связаны с присвоением обязанностей объектам.
Описывают структуру и очерчивают шаблоны передачи данных, обеспечивают взаимодействия.
Цепочка обязанностей (Chain of Responsibility)
Команда (Command)
Итератор (Iterator)
Посредник (Mediator)
Хранитель (Memento)
Наблюдатель (Observer)
Посетитель (Visitor)
Стратегия (Strategy)
Состояние (State)
Шаблонный метод (Template Method)
32
02.12.2022
UML и паттерны проектирования
33 слайд
Фабричный метод (Factory Method)
Способ делегирования логики создания объектов дочерним классам.
33
02.12.2022
UML и паттерны проектирования
34 слайд
Строитель (Builder)
Позволяет создавать разные свойства объекта, избегая загрязнения конструктора.
34
02.12.2022
UML и паттерны проектирования
35 слайд
Позволяет помещать несовместимый объект в обёртку, чтобы он оказался совместимым с другим классом.
35
02.12.2022
UML и паттерны проектирования
Адаптер (Adapter)
36 слайд
Предоставляет
упрощённый интерфейс
для сложной подсистемы.
«Interface»
IАдрес
+ ЗадатьУлицу()
+ ЗадатьКорпус()
+ ЗадатьДом()
+ ЗадатьКвартиру()
+ ПрочитатьУлицу()
+ ПрочитатьКорпус()
+ ПрочитатьДом()
+ ПрочитатьКвартиру()
«Interface»
IФасад
+ ЗадатьАдрес()
+ ПрочитатьАдрес()
Адрес
- Улица: String
- Корпус: Integer
- Дом: Integer
- Квартира: Integer
Фасад
+ Адрес: String
36
02.12.2022
UML и паттерны проектирования
Фасад (Facade)
37 слайд
Позволяет создавать цепочки объектов.
Клиент
Обработчик
ОбработатьЗапрос()
Конкретный Обработчик 1
ОбработатьЗапрос()
Конкретный Обработчик 2
ОбработатьЗапрос()
преемник
37
02.12.2022
UML и паттерны проектирования
Цепочка обязанностей
(Chain of Responsibility)
38 слайд
38
02.12.2022
UML и паттерны проектирования
Способ доступа
к элементам объекта
без раскрытия базового
представления.
Первый()
Следующий()
Выполнено()
ТекущийЭлемент()
Агрегат
СоздатьИтератор()
Клиент
Итератор
Конкретный Агрегат
СоздатьИтератор()
Конкретный
Итератор
Итератор (Iterator)
39 слайд
39
02.12.2022
UML и паттерны проектирования
Определяет зависимость между объектами, чтобы при изменении состояния одного
из них его «подчинённые» узнавали об этом.
ТаблицаБД
ТаблицаMSAccess
Круговая
Диаграмма
Диаграмма
1..*
1
Столбиковая
Диаграмма
Наблюдатель (Observer)
40 слайд
40
02.12.2022
UML и паттерны проектирования
Позволяет переключаться между алгоритмами или стратегиями
в зависимости
от ситуации.
Контекст
КонтекстИнтерфейс()
Стратегия
АлгоритмИнтерфейс()
Конкретная Стратегия А
АлгоритмИнтерфейс()
Конкретная Стратегия В
АлгоритмИнтерфейс()
Конкретная Стратегия С
АлгоритмИнтерфейс()
Стратегия (Strategy)
41 слайд
Вывод
Самая трудная задача в объектно-ориентированном проектировании – разложить систему на объекты.
Необходимо учитывать множество факторов.
Прежде, чем реализовать идею, которую хочешь разработать – разбери её по частям и создай архитектуру приложения в UML.
41
02.12.2022
UML и паттерны проектирования
42 слайд
Практическая задача
Создать UML – диаграмму интернет-магазина.
Описать процесс покупки товара в интернет-магазине (бизнес-процесс покупки).
Из каких объектов он состоит?
42
02.12.2022
UML и паттерны проектирования
43 слайд
https://online.visual-paradigm.com/drive
43
02.12.2022
UML и паттерны проектирования
Рабочие листы
к вашим урокам
Скачать
6 671 670 материалов в базе
Настоящий материал опубликован пользователем Галинова Анна Александровна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт
Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.
Удалить материалВаша скидка на курсы
40%Курс профессиональной переподготовки
300/600 ч.
Курс повышения квалификации
36/72 ч.
Курс профессиональной переподготовки
300/600 ч.
Мини-курс
10 ч.
Мини-курс
6 ч.
Мини-курс
3 ч.
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.