Объектно-ориентированное проектирование. Павлов А.Ю. - 13 стр.

UptoLike

Составители: 

классами А и В «отношения наследования более пригодны тогда, когда любой объект
класса В может рассматриваться одновременно как объект А». Если же объект
является больше, чем сумма отдельных частей, то более целесообразны отношения
использования.
Отношения между объектами определяют в основном и механизмы их
взаимодействия. Вопрос состоит только в направлении реализации определенных
действий. Например, на ткацкой фабрике материалы (партии) поступают на участки
для обработки. На каждом участке можно заменить управляющего. Является ли
поступление материала на участок операцией над помещением, над материалом или
тем и другим
сразу? Если это операции над помещением, то помещение должно быть
«видимо» для партии материала. Если это операция над материалом, то материал
должен быть «видим» для помещения, так как партия материала должна различать
помещения участков. В последнем варианте (операция над помещением и материалом)
нужно обеспечить взаимную «видимость».
Теперь следует определить отношение
между управляющим участком и
помещением (но не материалом и управляющим); либо управляющий должен знать о
помещении, либо помещение об управляющем. Иногда в процессе проектирования
полезно определить в явном виде «видимость» объектов. Существуют три основных
способа реализации видимости объекта X объекту Y:
Размещение в одной зоне видимости Y находится в зоне видимости X;
поэтому X может прямо
именовать Y
Использование Y передается в качестве параметра
какой-либо операции над X
Использование поля Y является полем объекта X
Эти способы являются вариациями идеи общей зоны «видимости». Y может
быть полем X и при этом находится в зоне видимости других объектов. Общая зона
видимости приводит к общности структуры, т.е. общая часть структуры доступна по
нескольким
направлениям. Такие отношения не всегда желательны, поэтому
целесообразно пользоваться их явным указанием в процессе проектирования.
В лабораторной работе 1 были выделены абстракции. Определим отношения
между ними. Для этого будем анализировать, в каких отношениях может находиться
каждый из классов со всеми остальными классами.
Класс объектов «Файл» взаимодействует с классом объектов «Диалог выбора
файла» и классом объектов «Транслятор». Эти взаимодействия соответствуют
отношению зависимость. Следовательно, в классах объектов «Диалог выбора файла» и
«Транслятор» должны присутствовать операции в качестве параметров использующие
класс объектов «Файл». Видимость реализуется посредством использования.
Класс объектов «Изображение» взаимодействует с классом объектов «Область
отображения» и классом объектов «Транслятор». Эти взаимодействия соответствуют
отношению
зависимость. Следовательно, в классах объектов «Область отображения» и
«Транслятор» должны присутствовать операции в качестве параметров использующие
класс объектов «Изображение». Видимость реализуется посредством использования.
Между классом объектов «Менеджер» и классами объектов «Диалог выбора
файла», «Транслятор», «Область отображения» и «Конфигуратор» взаимодействия
соответствуют отношению ассоциация. Видимость реализуется посредством размещения
в одной зоне видимости
.
Отчет по лабораторной работе должен содержать описание отношений между
классами и реализации видимости.