Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы на вопросы по инструментам.docx
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
101 Кб
Скачать
☆

13 Вопрос. Отношения между классами

Теория ООП выделяет три основных отношения между классами:

Ассоциация

Агрегация и композиция

Обобщение/Расширение (наследование)

Ассоциация означает, что объекты двух классов могут ссылаться один на другой, иметь некоторую связь между друг другом.

Агрегация и композиция на самом деле являются частными случаями ассоциации. Это более конкретизированные отношения между объектами. Агрегация — отношение когда один объект является частью другого. Например Студент входит в Группу любителей физики. Композиция — еще более «жесткое отношение, когда объект не только является частью другого объекта, но и вообще не может принадлежат еще кому-то.

14 вопрос. Диаграммы состояний

Диаграмма состояний — это, по существу, диаграмма состояний из теории автоматов со стандартизированными условными обозначениями[1] [2], которая может определять множество систем от компьютерных программ до бизнес-процессов. 

Используются следующие условные обозначения:

Круг, обозначающий начальное состояние.

Окружность с маленьким кругом внутри, обозначающая конечное состояние (если есть).

Скруглённый прямоугольник, обозначающий состояние. Верхушка прямоугольника содержит название состояния. В середине может быть горизонтальная линия, под которой записываются активности, происходящие в данном состоянии.

Стрелка, обозначающая переход. Название события (если есть), вызывающего переход, отмечается рядом со стрелкой. Охраняющее выражение может быть добавлено перед «/» и заключено в квадратные скобки (название_события[охраняющее_выражение]), что значит, что это выражение должно быть истинным, чтобы переход имел место. Если при переходе производится какое-то действие, то оно добавляется после «/» (название_события[охраняющее_выражение]/действие).

Толстая горизонтальная линия с либо множеством входящих линий и одной выходящей, либо одной входящей линией и множеством выходящих. Это обозначает объединение и разветвление соответственно.

15 Вопрос. Внутренние активности. Состояния активности

Состояния могут реагировать на события без совершения перехода, используя внутренние активности (internal activities), и в этом случае событие, защита и активность размещаются внутри прямоугольника состояния. Внутренняя активность подобна самопереходу (self-transition) – переходу, который возвращает в то же самое состояние. Синтаксис внутренних активностей построен по той же логической схеме события, защиты и процедуры.

В состояниях, которые мы описывали до сих пор, объект молчит и ожидает следующего события, прежде чем что-нибудь сделать. Однако возможны состояния, в которых объект проявляет некоторую активность. Состояние Searching (Поиск)  является таким состоянием активности (activity state): ведущаяся активность обозначается символом do; отсюда термин do-activity (проявлять активность). После того как поиск завершен, выполняются переходы без активности, например показ нового оборудования (Display New Hardware). Если в процессе активности происходит событие отмены (cancel), то do-активность просто прерывается и мы возвращаемся в состояние Update Hardware Window (Обновление окна оборудования).