作爲一名程序員,你還需要會畫圖

大家在做技術方案的時候,經常要畫一些架構圖之類,而剛接觸這塊的小夥伴可能不知道要畫哪些圖,怎麼畫,不知道怎麼下手,所以我想結合 UML 的一些知識點,和大家分享一下我們技術方案裏面常用的圖應該怎麼畫。

UML 相關知識

簡單普及下 UML 相關的知識,這裏不會講得那麼全面,只介紹平時工作中用得比較多一些概念

建模軟件

UML 案例

我以訂單系統的設計爲例,將平時使⽤頻率較⾼的圖展現出來。

邊界(Boundary)

⼀個電商⽹站,通常按領域職責作爲邊界,有訂單域、商品域、⽤⼾域、⽀付域、營銷域等,各域只 負責⾃⼰域內的事情,減少混亂,⾼內聚低耦合。

⽤例圖(Use Case Diagram)

現在回到訂單域,我們根據業務場景,梳理出系統⽤例圖。

類圖(Class Diagram)

訂單相關的類以及類之間的關係

組件圖 (Component Diagram)

訂單系統組件依賴於⽤⼾系統組件、商品系統組件、營銷系統組件

部署圖(Deployment Diagram)

訂單系統交付後的系統部署圖

狀態圖 (State Diagram)

  1. 訂單狀態:待付款、待發貨、待收貨、訂單完成、退款中、訂單關閉

  2. 訂單事件:下單、付款、發貨、收貨、申請退款、確認退款

活動圖(Activity Diagram)

活動圖主要描述⾏爲的動作,⽽狀態圖主要描述⾏爲的結果。我們以簡化版的提交訂單爲例,畫下它的活動圖

序列圖(Sequence Diagram)

強調對象之間的動態交互,我們以訂單⽀付爲例,來畫⼀個序列圖

架構設計圖

在架構設計過程中,經常需要畫⼀些總體的架構圖,那總體的架構圖⼜有哪些呢?在這裏我簡單畫一下,不一定標準,希望能給大家一個入門的感覺吧。

業務架構圖應用架構圖技術架構圖數據架構圖

來源:

https://www.toutiao.com/article/7073344739932209705/?log_from=5320b5a662ed6_1653268339718

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/ZGZkf9_99BbcANUwcIqe8w