團隊溝通利器之UML—— 序列圖


一:用途

     對一個開發團隊來說,序列圖是非常重要的,因為序列圖用於描述系統內部一群對象之間的交互情況,尤其在做爬蟲這種

業務復雜性的項目,序列圖可以讓我們更快的理清這些復雜流程。

 

二:基本元素

   序列圖中的uml元素還是相對比較少的,先截個圖。

1:生命線

首先我們要知道序列圖有一種動靜結合的特點,以類圖作為靜態結構,用例圖作為動態行為的過程。所以我們可以認為生命線

就是一個類,比如下圖中,customer:Customer ,前者是類的實例,后者是類名,圖中的“X”是類的析構函數,也就是銷毀。

這里有一個注意的地方,我們將圖中的”Actor“屬性設為True是,該生命線就會變成參與者生命線。

2:同步,異步

    說起同步或者異步,我想大家第一反應可能就是ajax或者Thread,既然序列圖是描敘對象之間的交互就必然存在同步

或者異步,在uml元素中,“同步”是具有來去箭頭的,而”異步“就是單向箭頭。

從上面的序列圖中,我們可以看出Customer向Order下訂單,下單成功后同時異步請求email發送郵件,既然是異步,也就不

存在影響主流程了。

3:創建

   在交互段內如果要創建別的生命線(類對象),那么此時需要使用創建消息,不過在實際應用中用的還是比較少的,畢竟萬事

萬物遵循”八二原則“的。

   在vs2010里面有支持序列圖的”反向工程“,蠻有意思的,我們先看一下,我在Program里面實例化了一個Test類,看看在序列

圖中是否用Create來實現。

 

4:組合片段

    現在我們也知道了,序列圖中是一群對象在交互,那么交互必然存在着邏輯,比如if/else,for等等,在uml中有12中這樣的業務

邏輯的組合片段,同樣八二原則,了解一些常用的即可。

通過對比兩張圖,我想大家肯定清楚下面的那張序列圖所表達的意思。

 

最后上一張綜合一點的圖,有了上面的簡述,我想這張圖大家應該也能看得懂。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM