Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция3.doc
Скачиваний:
16
Добавлен:
16.12.2018
Размер:
81.92 Кб
Скачать

Лекция 3 Диаграмма классов (class diagram)

1. Class diagram

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

Диаграммы классов применяют для моделирования статического вида системы с точки зрения проектирования. В этом представлении удобнее всего описывать функциональные требования к системе - услуги, которые она предоставляет конечному пользователю.

Обычно диаграммы классов строятся в следующих целях:

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

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

- для моделирования логической схемы базы данных. Логическую схему можно представлять себе как чертеж концептуального проекта базы данных. Во многих сферах деятельности требуется хранить устойчивую (persistent) информацию в реляционной или объектно-ориентированной базе данных. Моделировать схемы также можно с помощью диаграмм классов

2. Класс (class)

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

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

Обязательным элементом обозначения класса является его имя. Отдельные классы могут обозначаться простым прямоугольником с указанием только имени соответствующего класса. По мере разработки диаграммы классов можно дополнить атрибутами и операциями.

Имя класса

У каждого класса должно быть имя, отличающее его от других классов. Имя класса - это текстовая строка. Взятое само по себе, оно называется простым именем. К составному имени спереди добавлено имя пакета, куда входит класс. Имя класса должно быть уникальным (в пределах пакета).

Атрибуты класса

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

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

Операции

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]