Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы по ТООМ.doc
Скачиваний:
124
Добавлен:
02.05.2014
Размер:
2.1 Mб
Скачать

7. Диаграмма классов[1/3].

Class diagram. Процесс разработки диаграммы классов (ДК) занимает центральное место в ООАП сложных систем. От умения правильно выбрать классы и установить между ними взаимосвязи зависит не только успех процесса проектирования, но и производительность программы.

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

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

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

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

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

Каждому атрибуту класса соответствует отдельная строка текста:

<квантор видимости> <имя атрибута> [кратность] <тип значения атрибута> = <исходное значение> <строка св-ва>.

1) Квантор видимости может принимать одно их трех возможных значений и выражается с помощью специальных символов:

“+” – обозначает атрибут с областью видимости типа public. Атрибут в этой областью видимости доступен и виден из любого другого класса (пакета), в котором определена диаграмма.

“#” – обозначает атрибут с областью видимости protected. Атрибут с этой областью видимости недоступен (не видим) для всех классов за исключением подкласса данного класса.

“–”– обозначает атрибут с областью видимости private. Атрибут с этой областью видимости недоступен (не видим) для всех классов без исключения.

Если квантор видимости отсутствует, считается, что видимость атрибута не указывается.

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

3) Кратность характеризует общее кол-во конкретных атрибутов данного типа, входящих в состав отдельного класса. Если кратность не указана, по умолчанию принимается значение равное 0.

4) Тип значения атрибута представляет собой выражение семантики, которое определяется языком спецификации соответствующей модели.

*7. Диаграмма классов[2/3].

В нотации UML иногда определяется в зависимости от языка программирования, который предполагается использовать для реализации данной модели.

Пример.

Цвет: color

Имя сотрудника [1..2]: string

5) Исходное значение служит для задания некоторого начального значения для соответствующего атрибута в момент создания некоторого экземпляра класса.

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

Операции классов

Это некоторый сервис, который предоставляет каждый экземпляр класса по определенному требованию.

Совокупность операций характеризует функциональный аспект поведения классов. Запись операций классов в языке UML стандартизована и подчиняется определенным синтаксическим правилам:

<квантор видимости> <имя операции> (список параметров): <выражение типа возвращаемого значения> {строка св-ва}.

1) Квантор видимости аналогично атрибутам.

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

3) Список параметров разделенных запятой – это перечень формальных параметров, каждый из которых может быть представлен в следующем виде:

<вид параметра> <имя операции> : <выражение типа> = <значение параметра по умолчанию>.

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

5) Строка св-ва аналогично атрибутам.