UML總結(jié)

uml概述

uml形式

  • 類圖
  • 時(shí)序圖

類圖是展示軟件項(xiàng)目中,類與類關(guān)系的邏輯圖。
時(shí)序圖展示的是軟件的方法調(diào)用流程。

uml類圖

先從一張圖片說起:

uml類型示例.png

圖中一共包含五種關(guān)系

  • 泛化
  • 聚合
  • 組合
  • 依賴
  • 關(guān)聯(lián)

泛化

泛化關(guān)系,有兩種類型

  • 繼承 上圖中小汽車和suv就是繼承關(guān)系,小汽車是suv的父類,對(duì)應(yīng)在uml圖上就是用一個(gè)空心三角箭頭指向父類
  • 實(shí)現(xiàn) 上圖中小汽車實(shí)現(xiàn)車這個(gè)接口,也是空心三角箭頭指向接口,但線是虛線

聚合

聚合關(guān)系,表示由A組成B,但如果B不存在了,A還能獨(dú)立存在,A是B的一部分。對(duì)應(yīng)上圖的學(xué)生和班級(jí),由實(shí)線菱形箭頭表示

組合

組合關(guān)系,表示A是B的一部分,但如果B不存在了,那么A也不再存在。對(duì)應(yīng)上圖的輪胎和小汽車,由實(shí)現(xiàn)黑色菱形箭頭表示,箭頭指向B。
組合關(guān)系和聚合關(guān)系非常相似,都表示A是B的一部分,但組合關(guān)系相對(duì)更加箭單一些,只要A是B的全局變量,則可以使用組合關(guān)系表達(dá),但聚合關(guān)系稍微復(fù)雜,表示A能脫離B而單獨(dú)存在,比如學(xué)生與班級(jí),班級(jí)不存在了,學(xué)生依舊存在。

依賴

依賴關(guān)系,使用帶虛線的箭頭表示,表示在運(yùn)行時(shí)的依賴,是一種臨時(shí)性的關(guān)系。
上圖中,學(xué)生就依賴于自行車。
對(duì)應(yīng)軟件上,本人理解的就是,A依賴B,B是A在運(yùn)行時(shí)的局部變量。

關(guān)聯(lián)

關(guān)聯(lián)關(guān)系,使用實(shí)線箭頭表示,但表示的是一種靜態(tài)關(guān)系的依賴。
關(guān)聯(lián)關(guān)系,在最終代碼上是以成員變量形式存在的。與組合,聚合類似。

如上圖所示,Adress是Customer的一個(gè)成員變量,它們之間就是關(guān)聯(lián)關(guān)系,箭頭處為成員變量。

uml時(shí)序圖

uml時(shí)序圖,用于表示軟件的調(diào)用流程,使用starUml軟件繪制uml時(shí)序圖特別方便,標(biāo)注也很清晰。
uml類圖,本人傾向于使用visio 2013繪制
uml時(shí)序圖具體示例請(qǐng)看下圖

uml時(shí)序圖示例.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 這里不會(huì)將UML的各種元素都提到,我只想講講類圖中各個(gè)類之間的關(guān)系; 能看懂類圖中各個(gè)類之間的線條、箭頭代表什么意...
    a2bfbb8a095f閱讀 1,915評(píng)論 0 1
  • “健康的人不會(huì)折磨他人,往往是那些曾受折磨的人轉(zhuǎn)而成為折磨他人者。” 這是《犯罪心理》里面其中一集的一個(gè)...
    浮夢(mèng)伴月閱讀 1,475評(píng)論 0 0
  • 雖然我跟鎖哥認(rèn)識(shí)那么長時(shí)間,但在成了一對(duì)兒之前我倆單獨(dú)相處的機(jī)會(huì)真的不多。 有人說,當(dāng)你喜歡一個(gè)人很久很久,可能你...
    江四合閱讀 363評(píng)論 0 0
  • 170315@D71.感恩冥想 佩詩 。深深的感恩慈悲偉大的佛陀,感謝感謝感謝! 。感恩格西老師用現(xiàn)代化的語言教授...
    佩詩閱讀 127評(píng)論 0 0

友情鏈接更多精彩內(nèi)容