Donate254Patreon125


Диаграмма объектов

Определение объектов

Вы можете определить экземпляр объекта используя ключевое слово object.

@startuml
object firstObject
object "My Second Object" as o2
@enduml

Отношения между объектами

Отношения между объектами определяются с использованием следующий символов :

Type Symbol Image
Extension <|--
Composition *--
Aggregation o--

Возможно заменить -- на .. чтобы получить линию из точек.

Зная данные правила, можно создать следующие картинки.

Возможно добавить описание к связи, используя :, с последующим текстом описания.

Для определения количества элементов, вы можете использовать двойные кавычки "" на каждой стороне связи.

@startuml
object Object01
object Object02
object Object03
object Object04
object Object05
object Object06
object Object07
object Object08

Object01 <|-- Object02
Object03 *-- Object04
Object05 o-- "4" Object06
Object07 .. Object08 : some labels
@enduml

Associations objects

@startuml
object o1
object o2
diamond dia
object o3

o1  --> dia
o2  --> dia
dia --> o3
@enduml

Добавление полей

Для определения свойств (полей) объекта, задайте префикс :, указав вслед за ним имея свойства.

@startuml

object user

user : name = "Dummy"
user : id = 123

@enduml

Также возможно разместить все поля между скобками {}.

@startuml

object user {
  name = "Dummy"
  id = 123
}

@enduml

Общие с диаграммами классов функции

Map table or associative array

You can define a map table or associative array, with map keyword and => separator.

@startuml
map CapitalCity {
 UK => London
 USA => Washington
 Germany => Berlin
}
@enduml

@startuml
map "Map **Contry => CapitalCity**" as CC {
 UK => London
 USA => Washington
 Germany => Berlin
}
@enduml

@startuml
map "map: Map<Integer, String>" as users {
 1 => Alice
 2 => Bob
 3 => Charlie
}
@enduml

And add link with object.

@startuml
object London

map CapitalCity {
 UK *-> London
 USA => Washington
 Germany => Berlin
}
@enduml

@startuml
object London
object Washington
object Berlin
object NewYork

map CapitalCity {
 UK *-> London
 USA *--> Washington
 Germany *---> Berlin
}

NewYork --> CapitalCity::USA
@enduml

[Ref. #307]