Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы часть 1.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
193.54 Кб
Скачать

26. Опишите основные типы связей между классами (ассоциация, зависимость, агрегация, наследование, полиморфизм). Объясните понятие «дружественный класс».

Ассоциация – связь между классами, при которой можно указать только роли, которые классы играют друг для друга. На UML простая линия;

Зависимость – связь при которой один класс ссылается на другой. На UML пунктирная стрелка;

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

Наследование – отношение между классами, когда один класс повторяет структуру и поведение другого класса;

Полиморфизм – свойство, допускающее отнесение значений и переменных к нескольким типам;

Дружественный класс – все компонентные функции класса являются дружественными для другого класса. Дружественные функции – это функции, объявленные вне класса, но имеющие доступ к закрытым и защищенным полям данного класса.

Агрегация по значению – предполагает, что целое и часть создаются и разрушаются одновременно. На UML линия и закрашенный ромбик, у класса, являющегося целым;

Агрегация по ссылке – предполагает, что целое и часть могут создаваться и разрушаться в разное время. На UML линия и полый ромбик, у класса, являющегося целым;

27. Объясните следующие понятия: «стереотип связи», «имя связи» и «элемент связи».

Стереотип связи – механизм, позволяющий классифицировать связи.

Имя связи – глагол (глагольная фраза) описывающая, зачем нужна связь.

Элемент связи – место, где храниться относящиеся к ассоциации атрибуты. Также известен как класс ассоциации.

28. Выявление связей.

Почти вся информация о связях находится на диаграммах взаимодействия.

Алгоритм выявления связей:

  1. Изучение диаграмм взаимодействия. Если один класс посылает сообщения другому классу, то можно установить связь, как правило, ассоциации или зависимости.

  2. Исследование классов на предмет наличие связей целое/часть. Класс, состоящий из других классов, может учувствовать в связи агрегация.

  3. Исследование классов на предмет связи обобщения(связь, показывающая наследования между двумя классами).

  4. Связи общения можно обнаружить, исследуя классы, имеющие много общего

Особенность хорошо спроектированного приложения – небольшое кол-во связей в системе.

29. Опишите основные критерии, используемые для оценки качества классов и объектов.

Сцепление – мера внешней независимости между отдельными модулями, объектами и классами. Тем сильнее зависимость, тем сложнее модифицировать систему (независимое, по данным, по образцу, по управлению, по внешним данным, по общей области, по коду – от слабого к сильному).

Связность – мера независимости внутренних частей модуля, объекта, класса. Наименее желательная – по совпадению, когда в классе собраны совершенно независимые абстракции. Наоборот: функциональная связность. (функциональная, последовательная, коммуникативная, процедурная, временная, логическая, по совпадению – от сильного к слабому).

Достаточность – подразумевается минимум наличие в классе или модуле всего необходимого для реализации логичного и эффективного поведения.

Полнота – подразумевается наличие в интерфейсной части класса всех характеристик абстракций. Идея достаточности предъявляет к интерфейсу оптимальные требования, а идея полноты охватывает все аспекты абстракций.

Примитивность – примитивными являются только операции, которые требуют доступа к внутренней реализации абстракции.

3. Визуальное моделирование

1. Объясните понятие «визуальное моделирование». Перечислите основные цели визуального моделирования.

Визуальное моделирование – процесс графического представления модели с помощью некоторого стандартного набора графических элементов.

Основные цели:

- общение между участниками проекта;

- созданные модели позволяют показать разрабатываемую систему всем заинтересованным сторонам.

2. Перечислите основные достоинства единой системы обозначений.

Достоинства:

- единая система обозначение понятна всем;

- можно сосредоточить на задачах более высокого порядка;

- автоматизация проверки на полноту и правильность.

3. Дайте краткую характеристику нотаций ориентированных на объектно-ориентированную методологию.

  1. Метод Буча

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

  1. Технология объектного моделирования (ОМТ)

Используется более простая графика моделирования по сравнению с методом Буча.

  1. Унифицированный язык моделирования (UML) – был принят.

Символы UML сильно напоминают нотации Буча и ОМТ. С 1993 по 1995 происходило объединение методов в составе UML – каждый из трех авторов внедрял идеи остальных авторов.

4. UML - общая характеристика, назначение основных диаграмм.

Основные диаграммы:

Диаграмма использования. Наглядно представляет требования к системе. Содержит: Варианты использования – функции, выполняемые системой. Действующее лицо – все, что взаимодействует с системой. Связи – показывают способы взаимодействия.

Диаграмма взаимодействия. Используется для моделирования взаимодействия между объектами системы. При помощи него можно определить классы, которые нужно создать, связи между ними, а также операции для каждого класса. Важное понятие – сценарий. Это поток событий для частного случая.

Диаграмма классов. Позволяет показать основные характеристики классов системы и связи между классами.

Диаграмма состояний. Содержит информацию о состояниях, в которых может находиться объект, о том, как он переходит из одного состояние в другое и как он ведет себя в этих состояниях. Состояние – одно из возможных условий, в которых может существовать объект.

Диаграмма компонентов. Показывает, как выглядит модель на физическом уровне. На ней изображаются компоненты программного обеспечения системы и связи между ними.

Диаграмма размещения. Показывают физическое расположение различных компонентов системы в сети. Содержит процессоры, устройства, процессы и связи между процессорами и устройствами.