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

8.Диаг. Классов, атрибуты, стереотипы, видимость атрибутов и т.П.

Атрибуты и операции классов

Атрибут – фрагмент информации, связь с классом (свойства объекта)

company

Название

Адрес

Число служащих

Компани

Атрибуты->

Для выявления атрибутов можно использовать следующие источники:

- Прецедент из Use Case

- Документации к системе

- Структуры БД (её поля)

С атрибутами связывают следующие параметры:

- Имя;

- Тип;

- Начальное значение;

С атрибутами можно связывать некоторые текстовые описания, которое войдет как комментарии в генерируемый код.

Для добавления атрибутов в классу:

  1. Нажать правой кнопкой мыши на классе

  2. В открытом меню выбрать пункт

New->Attribute.

  1. Выберите атрибут в формате:

Имя: Тип данных: начальное значение

Перед началом генерациейкода не обходимо указати тип данныхкаждого атрибута.

Назначениестереотипа

Стереотип атрибута является способом его классификаций: например некоторые атрибуты могут соответствовать полям баз банных, а другие нет. Для каждого типа можно определить свой стереотип (но это необязательно)

  1. Нажать правой кнопкой мыши на атрибут в окне браузера

  2. Выбрать Open Specification атрибута класса

  3. Укажите стереотип в списке или введите новый стереотип.

Для ввода начального значения атрибута в поле initial value введите значение атрибута по умолчанию.

Задание видимости атрибута

Инкапсуляция (сокрытие)

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

Допускаться 4 значения видимости:

- public (общий, открытый всем классам)

Атрибуту в нотацииUML предшествует знак «+»

- private (закрытый, скрытый). Атрибут не виден никаким другим классам. Знак «-»

- protected Знак «#»

Package or implementation (пакетный)

Атрибут является общим, но только в пределах своего пакета (без значка)

Имя класса

- ID: integer=0

# Salary: float

+ Address: string

+ State : string

Department: string

Операции

В среде Rose 2 способа обозначения видимости:

- (+,-, #)– нотации UML;

- Значки Rose (см. в програмне)

Для изменения нотации:

  1. В меню выбрать Tools -> Options

  2. Перейти на вкладку Natation

  3. Установить флаг Visibility as icons

Задание метода локации атрибута

Метод локации атрибута (containment). Показывает, каким образом атрибут хранит в классе:

- by value (по значению).Атрибут храниться внутри класса.

- by reference (по ссылке). Атрибут локализован вне класса, но класс содержит указатель на него.

- unspecified (не определен). Метод локализации еще не определен (при генерации кода)

Статичные атрибуты

Обычно каждый экземпляр класса получает свою собственную копию атрибута. Чтобы один атрибут используется всеми экземплярами класса, его объявляют статично(static).

Employee

ID : integer

# $ Salary: float

Класс служащий

Объекты будут использованы атрибутом Salary («$»)

Устанавливаются флажком Static на вкладке Detail окна спецификаций атрибута.

Производные атрибуты

Производные атрибуты (derived) называются атрибуты, создаваемые из одного или нескольких других атрибутов.

Например, класс Прямоугольник может иметь атрибут площадь полученный из двух других атрибутов. Он считается производным атрибутом и помечается символом «/».

Rectangle

  • length

  • width

  • area

Класс прямоугольник

Устанавливается флажки derived на вкладке Detail окна спецификации атрибута.