Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Самовчитель по UML.doc
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆

12.5. Розробка діаграми класів в середовищі Rational Rose

Діаграма класів є основним логічним представленням моделі і містить найдокладнішу інформацію про внутрішній пристрій об'єктно-орієнтованої програмної системи. Активізувати діаграму класів у вікні діаграми можна також декількома способами:

Ця діаграма з'являється за умовчанням у вікні діаграми після створення нового проекту.

Клацнути на кнопці із зображенням діаграми класів на стандартній панелі інструментів.

Розкрити логічне уявлення в браузере (Logical View) і двічі клацнути на піктограмі Main (Головна).

Через пункт меню Browse‑ ‑ CIass Diagram (Браузер‑ ‑ Діаграма класів).

Після активізації діаграми класів спеціальна панель інструментів придбає вигляд, показаний на мал. 12.5. Додавання і видалення елементів відбувається аналогічно, проте у кожного класу є обширна специфікація, що містить інформацію про його атрибути і операції. При цьому видимість атрибутів і операцій зображається у формі спеціальних піктограм або прикрас (мал. 12.11).

Піктограми для видимості, що використовуються, зображаються перед ім'ям відповідного атрибута або операції і мають наступний сенс:

Загальний, відкритий (Public) – встановлюється за умовчанням. Приклад – атрибут 1 в класі 1. В цьому випадку атрибут видний всій решті класів моделі. Будь-який клас може переглянути і змінити значення цього атрибута. В нотації язика UML такому атрибуту відповідає знак "+".

Захищений (Protected). Приклад – атрибут 2 в класі 1. В цьому випадку атрибут можна проглянути і змінити з самого класу 1 або з його нащадків. В нотації язика UML такому атрибуту відповідає знак "#".

Закритий (Private). Приклад – атрибут 3 в класі 1. В цьому випадку атрибут не видний ніякому іншому класу, крім того, в якому він визначений. В нотації язика UML такому атрибуту відповідає знак "‑ ".

Пакетний (Implemented). Приклад – атрибут 4 в класі 1. Такий атрибут є загальним тільки в межах свого пакету. В нотації язика UML для такого атрибута піктограма відсутня.

Мал. 12.11. Приклад графічного зображення діаграми класів в середовищі Rational Rose

Аналогічні піктограми застосовуються для позначення видимості операцій класу. Так, операция_1() класу 1 є захищеною і тому доступ до неї дозволений тільки з самого класу 1 або з його нащадків. Опе‑ рация_2() цього ж класу є закритою і тому, окрім класу 1, вона ніякому іншому класу не доступна.

Для окремих атрибутів виділеного класу можна задати тип даних і початкові значення атрибута, а також призначити стереотип через пункт контекстного меню Open Specification (Відкрити специфікацію). При цьому пропонується вибір відповідних значень із списку, що розкривається. Для окремих операцій вибраного класу можна задати тип результату (класу, що повертається), що повертається, додати аргументи до операції, призначити для неї стереотип, а також визначити протокол і розмір, задати виняткові ситуації і цілий ряд додаткових властивостей. Ці властивості операції доступні через пункт контекстного меню Open Specification (Відкрити специфікацію) і вкладку Operations (Операції). При подвійному клацанні на вибраній операції відкривається додаткове вікно з вкладками, відповідними окремим з вказаних раніше властивостей.

Додавання на діаграму класів відносин (зв'язків) між класами типу асоціацій, залежності, агрегацій і узагальнень виконується таким чином. На спеціальній панелі інструментів вибирається необхідний тип зв'язку клацанням по кнопці з відповідним зображенням. Якщо зв'язок направлений, то на діаграмі класів треба виділити перший елемент зв'язку (джерело, від якого виходить зв'язок) і, не відпускаючи натискуючу ліву кнопку миші, перемістити її покажчик до другого елемента зв'язку (приймач, до якого направлений зв'язок). Після переміщення до другого елемента кнопку миші слід відпустити, а на діаграму класів буде доданий новий зв'язок.

Якщо ж зв'язок ненаправлений (двонаправлена), то порядок вибору класів для цього зв'язку довільний. Для зв'язків можна визначити кратність кожного з кінців зв'язку, задати ім'я і стереотип, використовувати обмеження і ролі, а також деякі інші властивості. Доступ до специфікації зв'язку можна дістати після виділення зв'язку на діаграмі і виклику контекстного меню клацанням правої кнопки миші.