時序圖建模工具,推薦一個工具 https://www.zenuml.com/web
時序圖是一種強調消息時序的交互圖,他由對象(Object)
、消息(Message)
、生命線(Lifeline)
和 Combined Fragments
組成,它主要描述系統中對象和對象之間的交互,它將這些交互建模成消息交換。異步
時序圖將交互關係展現成了一個平面二維圖,其中縱向標示時間軸,時間沿豎線從上向下進行。橫向軸標示了交互中各各個對象。對象的的用生命線表示。消息從一個對象的生命線到另外一個對象生命線的箭頭表示,箭頭以時間順序在圖中從上到下排列,從左到右排列。svg
生命線頭上那個方正的框裏面存放的就是對象,對象有本身的名字,生命線其實就是從上到下的一個虛線。生命線標示一個對象存在的生命週期,兩條生命線中間經過消息鏈接起來,
函數
對象名 :實例名
工具
消息用於對象間傳遞信息,對象之間的信息互通就是經過消息,消息按照分類可分爲:同步消息(Synchronous Message)
、異步消息(Asynchronous Message)
、 返回消息(Return Message)
和 自關聯消息(Self-Message)
oop
消息類型 | 描述 |
---|---|
同步消息 | 發送消息的對象在發送消息後會掛住,等消息接受對象接受消息返回後纔會解除掛住的狀態繼續本身的工做 |
異步消息 | 發送消息的對象在發送消息後會繼續本身的工做,而不等消息接受對象接受消息返回 |
返回消息 | 標示發送消息後返回的動做 |
自關聯消息 | 一個對象內自調用的狀況 |
標示有必定條件的消息發送線程
Alternative fragment(denoted 「alt」) 標示 if…then…else
Option fragment (denoted 「opt」) 標示Switch
Parallel fragment (denoted 「par」) 標示同時發生
Loop fragment(denoted 「loop」) 標示for
Break標示退出循環3d
循環code
當沒有指定循環邊界,默認範圍爲[0,無窮大]:xml
若是隻指定了一個值,那麼默認執行該值次數:
指定了循環邊界,則最少執行最小值值,最多執行最大值次數:
實現dowhile方式,至少執行一次,若是size<0則退出:
條件判斷
若是n>0,則執行agree函數
不然,執行reject函數
switch,當知足不一樣條件執行不一樣方法:
n=10時候執行save並退出循環
同時進行,好比多個線程同時執行任務