Учебное пособие по выполнению и оформлению курсовых, дипломных и квалификационных работ москва 2002 icon

Учебное пособие по выполнению и оформлению курсовых, дипломных и квалификационных работ москва 2002


1 чел. помогло.
Смотрите также:
Методические указания по выполнению выпускных квалификационных работ и выпускных...
И. Н. Кузнецов: «Рефераты, курсовые и дипломные работы»: методика подготовки и оформления...
Методические рекомендации по оформлению рефератов...
Методические рекомендации по оформлению рефератов...
Методические рекомендации по выполнению курсовых и выпускных квалификационных работ для...
З. Ф. Коврига Уголовный процесс России...
Настоящее пособие является коллективным трудом преподавателей географического факультета...
Методические указания по оформлению рефератов...
Методические рекомендации по подготовке и оформлению дипломных и курсовых работ по юриспруденции...
Темы выпускных квалификационных работ министерство образования и науки российской федерации...
Методические рекомендации по выполнению выпускных квалификационных (дипломных) работ уфа 2009...
Методические указания по выполнению курсовых проектов...



Загрузка...
страницы: 1   ...   7   8   9   10   11   12   13   14   15
вернуться в начало
скачать
^

6.3.Уточнение отношений классов


Процесс проектирования классов начинают с уточнения отношений между ними. На этапе проектирования помимо ассоциации и обобщения различают еще два типа отношения между классами: агрегацию и композицию.

К сожалению, до настоящего времени не существует единой устоявшейся терминологии объектно-ориентированного проектирования. В табл. 6.1 приведены соответствия между основными терминами, используемыми наиболее известными авторами в этой области.

Таблица 6.1

UML

Класс

Ассоциация

Обобщение

Агрегация

Буч

Класс

Использование

Наследование

Включение

Коад

Класс,

объект

Связь экземпляров

Обобщение-специализация

Часть-целое

Якобсон

Объект

Ассоциация родства

Наследование

Состоит из

Оделл

Тип объекта

Связь

Подтип

Композиция

Рамбо

Класс

Ассоциация

Обобщение

Агрегация

Шлеер/Меллор

Объект

Связь

Подтип

Не определена


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

Композиция – более сильная разновидность агрегации, которая подразумевает, что объект-часть может принадлежать только единственному целому. Объект-часть при этом создается и уничтожается только вместе со своим целым.

Уточненные отношения между классами фиксируют на диаграмме классов. Для этого используют специальные уловные обозначения (рис. 6.10).

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

Специальное обозначение на диаграмме классов этапа проектирования используют для указания абстрактных классов и методов: на диаграмме классов их имена выделяют курсивом, либо перед именем класса указывают стереотип «abstract».

UML также включает специальную нотацию для обозначения параметризованных классов или шаблонов (рис. 6.11).

Получение из класса-шаблона класса с конкретными типами элементов называют связыванием. Связывание можно обозначить двумя способами, явно указав тип-параметр (рис. 6.12, а) и используя условное обозначение уточнения (рис. 6.12, б).

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

Особое место в процессе проектирования классов занимает проектирование интерфейсов.

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

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

На диаграмме классов интерфейс можно показать двумя способами: с помощью специального условного обозначения (рис. 6.13, а) или, объявив для класса стереотип «interface» (рис. 6.13, б).

Реализацию интерфейса также можно показать двумя способами: сокращенно (рис. 6.14, а) или, используя отношение реализации (рис. 6.14, б).

Для остальных классов, ассоциированных с интерфейсом, следует уточнить ассоциацию, показав отношение зависимости. Это отношение в данном случае означает, что класс использует указанный интерфейс (рис. 6.15).

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

Пример 6.5. Уточнить отношения классов пакета Объекты задачи между собой с классом Решение из пакета Объекты управления, используя результаты детализации отношений между объектами рассматриваемых классов.

Анализ диаграммы кооперации, представленной на рис. 6.9 показывает, что:

  • класс Задание по сути дела представляет собой таблицу, в которой фиксируется все информация о конкретной задаче: вид задачи, алгоритм решения, данные и результат, причем результат связан с заданием неразрывно, так как теряет смысл вне контекста задания (отношение композиции), а данные имеют смысл сами по себе (отношение агрегации);

  • класс Алгоритм целесообразно разрабатывать как абстрактный, обеспечивающий интерфейс между объектом класса Решение и конкретным алгоритмом и между объектом класса Задание и опять же конкретным алгоритмом;

  • отношение между классами Задание и Алгоритм, Решение и Алгоритм, а также Задание и Решение – ассоциации, направленные к классу Задание.

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

Результат уточнения показан на рис. 6.16.




Скачать 0,94 Mb.
оставить комментарий
страница12/15
Дата29.09.2011
Размер0,94 Mb.
ТипУчебное пособие, Образовательные материалы
Добавить документ в свой блог или на сайт

страницы: 1   ...   7   8   9   10   11   12   13   14   15
отлично
  1
Ваша оценка:
Разместите кнопку на своём сайте или блоге:
rudocs.exdat.com

Загрузка...
База данных защищена авторским правом ©exdat 2000-2017
При копировании материала укажите ссылку
обратиться к администрации
Анализ
Справочники
Сценарии
Рефераты
Курсовые работы
Авторефераты
Программы
Методички
Документы
Понятия

опубликовать
Загрузка...
Документы

Рейтинг@Mail.ru
наверх