Шаблоны для диаграммы классов
Графическое изображение диаграммы классов несет информацию о составе классов и отношениях между ними, но в отличие от диаграмм в ООА диаграммы в ООП не содержат сведений об атрибутах и методах. Для указания этих сведений используются шаблоны:
· шаблон классы,
· шаблон утилиты,
· шаблон операции.
Шаблоны задаются в текстовом или в табличном виде.
Шаблон класса имеет вид:
имя: имя
документация: текст документации
видимость: экспортируемый /
обособленный /
импортируемый
множественность: 0/1/n
иерархия:
суперкласс: список имен суперклассов
метакласс: имя класса
обобщенные параметры: список параметров
интерфейс:
использование: список имен классов
поля: список используемых полей данных
операции: список используемых операций
реализация:
общедоступная:
поля: список полей данных
операции: список операций
защищенная:
поля: список полей данных
операции: список операций
обособленная:
поля: список полей данных
операции: список операций
Шаблон улитыкласса имеет вид:
имя: имя улиты
документация: текст документации
видимость: экспортируемый /
обособленный /
импортируемый
обобщенные параметры: список параметров
интерфейс:
использование: список имен классов
поля: список используемых полей данных
операции: список используемых операций
Шаблон операцииимеет вид:
имя: имя операции
документация: текст документации
категория: категория операции (предполагается, что все операции
делятся на категории, например: доступ к данным, изменения
данных, вывод - ввод, функциональное поведение)
параметры: список параметров
действие: краткое описание алгоритма.
Диаграмма объектов
Классы описывают статическую структуру объектно-ориентированного проекта. Одной из составляющих динамической структуры являются объекты (экземпляры классов). Объекты могут создаваться и уничтожаться, использовать методы других объектов.
Графическое обозначение объекта представлено на рис. 6.7, оно совпадает с обозначением класса, но используется не пунктирная, а сплошная линия.
Рис. 6.7. Графическое обозначение объекта.
Имя объекта может отсутствовать, т.к. программа может создавать неименованные объекты, например, для записи его в некоторый контейнер типа список или коллекция.
Связь между объектами обозначается линией без направления, показывающей, что один объект может передавать сообщение ( вызвать операции из ) другому объекту. Рядом с линией можно указать стрелку с именем вызываемой операции.
Информационные потоки на диаграммах объектов не отражаются.
На линии, связывающей два объекта, может быть указана метка конкретизирующая вид связи, перечень возможных меток приведен на рис 6.8.
Использование параметра
Общее использование параметра
Использование поля
Общее использование поля
Рис. 6.8. Обозначения для меток на линиях взаимодействия объектов.
Если объект А использует поле объекта В, то метка F располагается ближе к объекту А.
На диаграмме объектов можно отразить тот факт, что один объект включает в себя набор других. Для этого включаемые объекты располагаются внутри изображения внешнего объекта. Пример показан на рис. 6.9. Здесь объект "план работ" состоит из набора объектов "месячный план".
Рис. 6.9. Пример вложения объектов.
Может быть указана связь других объектов не только с объемлющим объектом, но и с внутренними. На рис. 6.10 представлена диаграмма объектов, для примера с геометрическими фигурами к которым добавлен графический редактор, позволяющий создавать рисунки.
Рис. 6.10. Диаграмма объектов для геометрических фигур.
Диаграмма переходов
Диаграмма переходов описывает состояние объектов и переходы между состояниями. Среди состояний выделяется одно начальное и одно или несколько заключительных, переходы между состояниями обозначаются стрелкой с пометкой события, вызывающего соответствующий переход. Набор графических обозначений приведен в таблице.
Таблица 6.3. Обозначения для диаграммы переходов
Обозначение | Смысл |
Состояние | |
Начальное состояние | |
Конечное состояние | |
Переход между состояниями |
Можно построить диаграмму состояний для схемы в целом, отдельной ее части, или для одного объекта. На рис. 6.11 представлена диаграмма в качестве примера.
Рис. 6.11. Диаграмма переходов для геометрической фигуры.