作爲一名程序員,你還需要會畫圖
大家在做技術方案的時候,經常要畫一些架構圖之類,而剛接觸這塊的小夥伴可能不知道要畫哪些圖,怎麼畫,不知道怎麼下手,所以我想結合 UML 的一些知識點,和大家分享一下我們技術方案裏面常用的圖應該怎麼畫。
UML 相關知識
簡單普及下 UML 相關的知識,這裏不會講得那麼全面,只介紹平時工作中用得比較多一些概念
建模軟件
UML 案例
我以訂單系統的設計爲例,將平時使⽤頻率較⾼的圖展現出來。
邊界(Boundary)
⼀個電商⽹站,通常按領域職責作爲邊界,有訂單域、商品域、⽤⼾域、⽀付域、營銷域等,各域只 負責⾃⼰域內的事情,減少混亂,⾼內聚低耦合。
⽤例圖(Use Case Diagram)
現在回到訂單域,我們根據業務場景,梳理出系統⽤例圖。
類圖(Class Diagram)
訂單相關的類以及類之間的關係
組件圖 (Component Diagram)
訂單系統組件依賴於⽤⼾系統組件、商品系統組件、營銷系統組件
部署圖(Deployment Diagram)
訂單系統交付後的系統部署圖
狀態圖 (State Diagram)
-
訂單狀態:待付款、待發貨、待收貨、訂單完成、退款中、訂單關閉
-
訂單事件:下單、付款、發貨、收貨、申請退款、確認退款
活動圖(Activity Diagram)
活動圖主要描述⾏爲的動作,⽽狀態圖主要描述⾏爲的結果。我們以簡化版的提交訂單爲例,畫下它的活動圖
序列圖(Sequence Diagram)
強調對象之間的動態交互,我們以訂單⽀付爲例,來畫⼀個序列圖
架構設計圖
在架構設計過程中,經常需要畫⼀些總體的架構圖,那總體的架構圖⼜有哪些呢?在這裏我簡單畫一下,不一定標準,希望能給大家一個入門的感覺吧。
業務架構圖應用架構圖技術架構圖數據架構圖
來源:
https://www.toutiao.com/article/7073344739932209705/?log_from=5320b5a662ed6_1653268339718
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/ZGZkf9_99BbcANUwcIqe8w