LABWORK-5 #3
BIN
Lab5-6/img.png
BIN
Lab5-6/img.png
Binary file not shown.
After Width: | Height: | Size: 11 KiB |
BIN
Lab5-6/img_3.png
Normal file
BIN
Lab5-6/img_3.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
@ -40,10 +40,10 @@
|
|||||||
Классы, реализующие паттерн:
|
Классы, реализующие паттерн:
|
||||||
- IStudentTracker (Target) – Интерфейс системы отслеживания успеваемости студентов
|
- IStudentTracker (Target) – Интерфейс системы отслеживания успеваемости студентов
|
||||||
- StudentManager (Client) – Использует данные о успеваемости, для определеня судьбы студентов
|
- StudentManager (Client) – Использует данные о успеваемости, для определеня судьбы студентов
|
||||||
- UniversitySystem (Adaptee) – Реализализовывает систему отслеживания успеваемости студентов
|
- AttendanceTracker (Adaptee) – Реализализовывает систему отслеживания посещаемости студентов
|
||||||
- StudentTrackerAdapter (Adapter) – "оборачивает" стороннюю систему и преобразует её в интерфейс, ожидаемый клиентом
|
- StudentTrackerAdapter (Adapter) – "оборачивает" стороннюю систему и преобразует её в интерфейс, ожидаемый клиентом
|
||||||
|
|
||||||
![img.png](img.png)
|
![img_3.png](img_3.png)
|
||||||
|
|
||||||
### Паттерн Composite
|
### Паттерн Composite
|
||||||
Паттерн Компоновщик (Composite) объединяет группы объектов в древовидную структуру
|
Паттерн Компоновщик (Composite) объединяет группы объектов в древовидную структуру
|
||||||
@ -66,11 +66,11 @@
|
|||||||
|
|
||||||
Классы, реализующие паттерн:
|
Классы, реализующие паттерн:
|
||||||
- IStudent (Component) – Студент обучающийся в вузе
|
- IStudent (Component) – Студент обучающийся в вузе
|
||||||
- Postgraduate (Composite) – Аспирант обучающийся в вузе и обучающий других студентов
|
- Group (Composite) – Группировка студентов (групаа в потоке, поток, курс...)
|
||||||
- Bachelor (Leaf) – Бакалавр
|
- Student (Leaf) – Конкретный студент
|
||||||
- University (Client) – Обеспечивает обучение студентов
|
- University (Client) – Обеспечивает обучение студентов
|
||||||
|
|
||||||
![img_1.png](img_1.png)
|
![img.png](img.png)
|
||||||
|
|
||||||
### Паттерн Proxy
|
### Паттерн Proxy
|
||||||
|
|
||||||
@ -88,7 +88,7 @@
|
|||||||
Классы, реализующие паттерн:
|
Классы, реализующие паттерн:
|
||||||
- IStudent (Subject) – Студент
|
- IStudent (Subject) – Студент
|
||||||
- Student (RealSubject) – Студент из группы
|
- Student (RealSubject) – Студент из группы
|
||||||
- Elder (Proxy) – Передаёт обработаную информацию студенту
|
- Elder (Proxy) – Староста отвечает на вопросы преподователя, при надомности спрашивает студентов группы
|
||||||
- Lecturer (Client) - Передаёт информацию студенту через старосту
|
- Lecturer (Client) - Задаёт вопросы студентам через старосту
|
||||||
|
|
||||||
![img_2.png](img_2.png)
|
![img_2.png](img_2.png)
|
21
Lab5-6/lab6.md
Normal file
21
Lab5-6/lab6.md
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
# Лабораторная работа №6.
|
||||||
|
# Применение структурных паттернов.
|
||||||
|
|
||||||
|
## Задание
|
||||||
|
1) Дать описание паттернов, указанных во вариантах, для каких целей они могут применяться,
|
||||||
|
какие участники там фигурируют.
|
||||||
|
2) На основе задания из 3 лабораторной работы, для каждого паттерна придумать сущности,
|
||||||
|
относящиеся к той же предметной области, что описаны в задании и реализация которых
|
||||||
|
бы в приложении потребовала применения паттерна.
|
||||||
|
### Ограничения:
|
||||||
|
- На каждый паттерн свои сущности
|
||||||
|
- В качестве источника сущностей использовать предметную область задания 3 лабораторной работы, а не элементы разработки (что-то типа «У меня паттерн Singleton, укажу ка я класс-подключение к БД через него», не принимается).
|
||||||
|
3) Создать диаграммы классов, отражающие взаимодействие новых
|
||||||
|
сущностей (а также используемый паттерн) с классами,
|
||||||
|
созданными в рамках 3 лабораторной работы. Отдельно отметить
|
||||||
|
классы, которые являются участниками паттерна
|
||||||
|
|
||||||
|
## Вариант 3: _AbstractFactory, FactoryMethod, ObjectPool._
|
||||||
|
|
||||||
|
### Паттерн AbstractFactory
|
||||||
|
|
Loading…
Reference in New Issue
Block a user