UML / АСУ_Фонотов_uml
.pdfСтереотипы классов
Кафедра Автоматизированных систем управления
Interface
Utills
Boundary
Control
Entity
и др.
© Фонотов Анастас Михайлович
Изображение классов
системуправления |
|
|
АвтоматизированныхКафедра |
• |
Верхняя секция - имя класса |
|
||
|
• |
Вторая секция - перечень атрибутов |
|
• |
Третья секция - перечень операций |
© Фонотов Анастас Михайлович
|
|
|
|
|
|
Имя класса |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
Имя класса уникально в пределах пакета |
|||
|
|
|||||
управления |
|
|
Класс принадлежит пакету: |
|||
|
|
|
Имя_пакета::Имя_класса |
|||
|
|
|
|
|||
систем |
|
|
|
Имя_пакета1::Имя_пакета2::Имя_класса |
||
|
|
Имя класса – имя существительное в единственном |
||||
Автоматизированных |
|
|
|
|||
|
|
|
числе |
|||
|
|
|
|
|||
|
|
|
Если класс не имеет экземпляра, он абстрактный и |
|||
Кафедра |
|
|
|
его имя записывается курсивом |
||
|
|
Класс может не иметь атрибутов или операций |
||||
|
|
|
|
|
© Фонотов Анастас Михайлович |
Атрибуты класса
Кафедра Автоматизированных систем управления
Атрибуты класса – инкапсулируемый элемент данных класса, то есть данных, который содержаться в объекте и который принадлежит описываемому классу.
<видимость> <имя>:<тип> = <начальное_значение> {<свойства>}
© Фонотов Анастас Михайлович
Атрибуты класса, видимость
Кафедра Автоматизированных систем управления
+ Public – общедоступный
# Protected - защищенный
- Private – закрытый
© Фонотов Анастас Михайлович
|
|
|
|
|
|
Атрибуты класса, тип атрибута |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
Семантика описания типов определяется языком |
|||
|
|
|||||
управления |
|
|
|
программирования, под который разрабатывается |
||
|
|
|
модель. |
|||
|
|
|
|
|||
систем |
|
|
Для атрибутов может быть указана его кратность. |
|||
|
|
|
По умолчанию она равна 1 |
|||
Автоматизированных |
|
|
вопрос[] : тВопрос |
|||
|
|
|||||
|
|
|
n : integer=10 |
|||
Кафедра |
|
|
enum_контроль(зачёт, экзамен, кр) = {экзамен, |
|||
|
|
|
кр}{frozen} |
|||
|
|
|
|
|
© Фонотов Анастас Михайлович |
Операция класса
Кафедра Автоматизированных систем управления
Операция – сущность определяющая некоторое действие, которое может быть выполнено представителями класса.
Операция связывается с сообщением на диаграмме взаимодействия.
<видимость><имя> (<список_параметров>)
:<тип_возвращаемого_значения> {<свойства>}
© Фонотов Анастас Михайлович
Операция класса, семантика
Кафедра Автоматизированных систем управления
Вид задает тип параметра:
in – входной
out – исходящий
inout
Пример: необходимо из функции вернуть минимум и максимум
Min_ max ( out max, out min, in a[], in size)
© Фонотов Анастас Михайлович
Операция класса
Кафедра Автоматизированных систем управления
Операции класса могут разделяться на группы согласно их предназначению
"constructors"
CRect(CPoint left_up, CPoint right_down) CRect(left:Integer, top:Integer, right:Integer, bottom:Integer) "Data access"
GetLeftUp(): Cpoint SetLeftUp(CPoint lup) GetRightDown():CPoint SetRightDown (CPoint rdn)
© Фонотов Анастас Михайлович
|
|
|
|
|
|
Операция класса |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
Различают 4 вида операций |
||||
|
||||||
управления |
|
|
|
1) Операции реализации (implemention) - бизнес |
||
|
|
|
функции. |
|||
|
|
|
|
|
|
|
систем |
|
|
|
|
2) Операции управления (manager) - конструкторы и |
|
|
|
|
|
деструкторы. |
||
|
|
|
|
|
|
|
Автоматизированных |
|
|
|
3) Операции доступа (access): |
||
|
|
|
|
операции класса. |
||
|
|
|
|
|
|
+ Set Price ( Price : float) |
|
|
|
|
|
|
+ Get Price : float |
|
|
|
|
|
4) Вспомогательные операции (helper)- закрытие |
|
Кафедра |
|
|
|
|
|
© Фонотов Анастас Михайлович