Обсуждение:PlantUML: различия между версиями

Материал из Поле цифровой дидактики
 
Нет описания правки
Метка: ручная отмена
 
(не показано 18 промежуточных версий этого же участника)
Строка 2: Строка 2:


https://www.youtube.com/watch?v=ScbZL5RX84E
https://www.youtube.com/watch?v=ScbZL5RX84E
== Эксперименты ==
<uml>
@startuml
left to right direction
skinparam packageStyle rectangle
actor Professor
actor Student
actor Staff
rectangle University-System {
    Professor --> (Grade Exam)
    Professor --> (Manage Course)
    Professor ---> (Access Course Information)
    Student ---> (Access Course Information) 
    Student ---> (Enroll in Course)
    Staff ---> (Access Course Information)
    Staff ---> (Manage Course) 
}
@enduml
</uml>
=== Long Notes ===
<uml>
@startuml
participant Alice
participant Bob
note left of Alice #aqua
This is displayed
left of Alice.
end note
note right of Alice: This is displayed right of Alice.
note over Alice: This is displayed over Alice.
note over Alice, Bob #FFAAAA: This is displayed\n over Bob and Alice.
note over Bob, Alice
This is yet another
example of
a long note.
end note
@enduml
</uml>
=== 3 ===
<uml>
@startuml
actor GenAI
actor Teacher
actor Student
note left of  Teacher #aqua
Some text
end note
note over Teacher, GenAI
Some other text about exchange between them
end note
@enduml
</uml>
== ? ==
<uml>
@startuml
skinparam actorStyle awesome
:User: --> (Use)
"Main Admin" as Admin
"Use the application" as (Use)
Admin --> (Admin the application)
@enduml
</uml>
== ==
<uml>
@startuml
actor actor
agent agent
artifact artifact
boundary boundary
card card
cloud cloud
component component
control control
database database
entity entity
file file
folder folder
frame frame
interface  interface
node node
package package
queue queue
stack stack
rectangle rectangle
storage storage
usecase usecase
@enduml
</uml>
== DB ==
* https://gist.github.com/QuantumGhost/0955a45383a0b6c0bc24f9654b3cb561
* https://www.openriskmanual.org/wiki/Special:Version
<uml>
@startuml
' uncomment the line below if you're using computer with a retina display
' skinparam dpi 300
!define Table(name,desc) class name as "desc" << (T,#FFAAAA) >>
' we use bold for primary key
' green color for unique
' and underscore for not_null
!define primary_key(x) <b>x</b>
!define unique(x) <color:green>x</color>
!define not_null(x) <u>x</u>
' other tags available:
' <i></i>
' <back:COLOR></color>, where color is a color name or html color code
' (#FFAACC)
' see: http://plantuml.com/classes.html#More
hide methods
hide stereotypes
' entities
Table(user, "user\n(User in our system)") {
primary_key(id) INTEGER
not_null(unique(username)) VARCHAR[32]
not_null(password) VARCHAR[64]
}
Table(session, "session\n(session for user)") {
primary_key(id) INTEGER
not_null(user_id) INTEGER
not_null(unique(session_id)) VARCHAR[64]
}
Table(user_profile, "user_profile\n(Some info of user)") {
primary_key(user_id) INTEGER
age SMALLINT
gender SMALLINT
birthday DATETIME
}
Table(group, "group\n(group of users)") {
primary_key(id) INTEGER
not_null(name) VARCHAR[32]
}
Table(user_group, "user_group\n(relationship of user and group)") {
primary_key(user_id) INTEGER
primary_key(group_id) INTEGER
joined_at DATETIME
}
' relationships
' one-to-one relationship
user -- user_profile : "A user only \nhas one profile"
' one to may relationship
user --> session : "A user may have\n many sessions"
' many to many relationship
' Add mark if you like
user "1" --> "*" user_group : "A user may be \nin many groups"
group "1" --> "0..N" user_group : "A group may \ncontain many users"
@enduml
</uml>

Текущая версия от 13:19, 21 ноября 2023