序列图(sequence)语法

概述

序列图(sequence diagram),又称时序图。
1. 通过描述对象之间发送消息的时间顺序
2. 显示多个对象之间的动态协作

元素

角色Actor

系统角色。

对象Object

位于序列图顶部,代表参与交互行为的对象。常见的命名方式:
1. 类名+对象名
2. 类名,无对象名(匿名对象)
3. 对象名,无类名

对象(object)是对客观事物的抽象,类(class)是对对象的抽象。

  • 一个对象可以通过发送消息来创建另一个对象
  • 一个对象可以被删除/自我删除,此时以”×”表示

生命线Lifeline

  1. 序列图中的对象在一段时间内的存在
  2. 以从对象底部中心延伸出的竖直虚线表示
  3. 对象之间的消息传递发生于生命线之间

激活期Activation

  1. 序列图中的对象执行一项操作的时期
    • 或执行其自身的代码
    • 或等待另一个对象的返回信息
  2. 以生命线上相应时间段内窄矩形表示

消息Message

  1. 用于对对象间通信内容进行建模的类
  2. 以垂直于生命线的单方向箭头表示
  3. 消息包含内容:
    • 消息名称
    • 消息参数
    • 可能带有条件表达式,以确定是否发送/发送分支

Markdown序列图语法

封装代码块

使用三个`加上sequence封装开头
使用三个`封装结尾

标题

Title: [标题]

声明对象

  1. 一般无需特别声明,除非需要定制对象出现顺序,如此则依次声明对象:
    participant [对象名]
  2. 使用下列语法可为对象编写注释:
    Note left/right to [对象名]: [注释]
    Note over [对象名]: [注释]
    Note over [多个对象,之间以,隔开]: [注释]
participant A
participant B
Note left of A: 这是对A的注释
Note right of B: 这是对B的注释
Note over A: 这是A上的注释
Note over A,B: 这是A和B共有的注释

实现效果如下:

Created with Raphaël 2.1.0 A A B B 这是对A的注释 这是对B的注释 这是A上的注释 这是A和B共有的注释

编写消息

  1. 基本语法:
    [发送对象][箭头符号][接收对象]: [消息]
  2. 箭头符号
    • -> 实线黑色三角箭头
    • –> 虚线黑色三角箭头
    • ->> 实线开放箭头
    • –>> 虚线开放箭头
  3. 消息显示顺序与代码中消息编写顺序一致
A->B: ->
B-->C: -->
B->>A: ->>
C-->>A: -->>

实现效果如下:

Created with Raphaël 2.1.0 A A B B C C -> --> ->> -->>

示例:皮质-基底节-丘脑环路(运动通路)的实现

超直接通路

#Hyperdirect Pathway
Title: Hyperdirect Pathway
Cx->STN: Glu
STN->GPi/SNr: Glu
GPi/SNr-->Thalamus: GABA
Thalamus->Cx: Glu
Created with Raphaël 2.1.0 Hyperdirect Pathway Cx Cx STN STN GPi/SNr GPi/SNr Thalamus Thalamus Glu Glu GABA Glu

直接通路

#Direct Pathway
Title: Direct Pathway
SNc->Str: DA(preset)
Cx->Str: Glu
Str-->GPi/SNr: GABA
GPi-->Thalamus: GABA
Thalamus->Cx: Glu
Created with Raphaël 2.1.0 Direct Pathway SNc SNc Str Str Cx Cx GPi/SNr GPi/SNr Thalamus Thalamus DA(preset) Glu GABA GABA Glu

间接通路

#Indirect Pathway
Title: Indirect Pathway
SNc->Str: DA(preset)
Cx->Str: Glu
Str-->GPe: GABA
GPe-->GPi/SNr: GABA
GPi/SNr-->Thalamus: GABA
Thalamus->Cx: Glu
Created with Raphaël 2.1.0 Indirect Pathway SNc SNc Str Str Cx Cx GPe GPe GPi/SNr GPi/SNr Thalamus Thalamus DA(preset) Glu GABA GABA GABA Glu

参考文献

Github: Js-Sequence-Diagrams

  • 1
    点赞
  • 3
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:技术工厂 设计师:CSDN官方博客 返回首页
评论

打赏作者

PUMC芋圆四号

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值