Диаграмма классов

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

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

На рис. 10а изображена схема простого обобщения. Классы Студент и Преподаватель наследуются от класса Субъект, получая от него открытые атрибуты (ФИО, возраст, адрес) и методы (изменитьАдрес). Такое подход позволяет объединять в одном классе все атрибуты и методы нескольких родственных или близких по поведению классов. Обобщающий класс может даже не иметь аналогов в реальном мире, т.е. описывать сущность-абстракцию.

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

14. Диаграммы взаимодействия UML: назначение, используемые элементы, примеры построения.

Диаграммы взаимодействия (interaction diagrams) описывают взаимодействие групп объектов в различных условиях их поведения [4]. UML определяет диаграммы взаимодействия нескольких типов, из которых наиболее употребительными являются диаграммы последовательности.

Обычно диаграмма последовательности описывает один сценарий. На диаграмме отображаются экземпляры объектов и сообщения, которыми обмениваются объекты в рамках какого-либо из прецедентов (use case).

На рис. 15 изображена диаграмма последовательности процесса удаления файла для программной системы синхронизации данных с внешним файловым хранилищем.

Рисунок 15. Диаграмма последовательности для процесса удаления файла из системы удаленного хранения.

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

Для каждого объекта указывается имя в формате имя_объекта: Имя_класса. Пунктирной линией отображается линия жизни объекта. Поверх линии жизни указывается фокус активности в виде прямоугольника. Фокус активности соответствует промежутку времени, в течение которого выполняется метод в контексте объекта для обработки пришедшего сообщения. Сами сообщения, передаваемые между объектами в виде вызовов функций, отображаются в виде горизонтальных стрелок. При этом передача сообщения может быть обусловлена или зациклена, это также отображается на диаграмме в формате, представленном на рис. 16. Как следует из рисунка, начиная с версии 2.0 стандарта UML для ветвлений и циклов используются фреймы взаимодействий.

15. .Метрики качества структурного и объектно-ориентированного анализа и проектирования.

16. Понятие объекта и класса в объектно-ориентированном программировании. Члены-данные и члены функции.

В основе объектно-ориентированного язык программирования лежат два основных понятия: объект и класс. Основными характеристическими свойствами этих понятий являются:

Инкапсуляция - комбинирование записей с процедурами и функциями, манипулирующими полями этих записей, формирует новый тип данных - объект (под записью понимается переменная типа "запись").

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

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: