天天看點

【UML模組化】(1) UML模組化的初了解,概述,組成,作用

您好,我是碼農飛哥,感謝您閱讀本文,歡迎一鍵三連哦。

文章目錄

  • ​​UML的介紹​​
  • ​​模型​​
  • ​​模組化的作用​​
  • ​​UML的組成​​
  • ​​構造塊​​
  • ​​構造塊之事物​​
  • ​​結構事物​​
  • ​​行為事物​​
  • ​​分組事物​​
  • ​​構造塊之四種基本關系​​
  • ​​構造塊之模型圖​​
  • ​​規則​​
  • ​​公共機制​​
  • ​​規則說明​​
  • ​​修飾​​
  • ​​通用劃分​​
  • ​​擴充機制​​
  • ​​UML的應用範圍​​
  • ​​參考​​
  • ​​粉絲專屬福利​​

UML的介紹

UML (Unified Modeling Language)是一種通用的可視化的模組化語言,可以用來描述、可視化、構造和文檔化軟體密集型系統的各種工件。它不是一種程式設計語言。

UML 是獨立于過程的,它可以在軟體生命周期的各個階段運用,不過主要應用于軟體開發的設計與分析階段。

模型

什麼是模型呢?模型就是對現實的簡化。比如:我們在設計一款新汽車時首先需要設計該汽車的模型,隻有模型設計好之後才會開始汽車的生産開發。

模組化的作用

  1. 模型有助于按照實際情況或按照所需要的樣式對系統進行可視化。
  2. 支援獨立于程式設計語言和開發過程的規範。
  3. 模型給出了指導構造系統的模闆。
  4. 模型對做出的決策進行文檔化。

UML的組成

【UML模組化】(1) UML模組化的初了解,概述,組成,作用

UML由構造塊,規則和公共機制這三部分組成。

  1. 構造塊:UML組成中構造塊是對模型中最具有代表性的成分的抽象
  2. 規則:UML有一套規則,這些規則描述了一個結構良好的模型看起來應該像什麼
  3. 公共機制: UML中有4種貫穿整個語言且一緻應用的公共機制,是以使得UML變得較為簡單。

構造塊

【UML模組化】(1) UML模組化的初了解,概述,組成,作用

構造塊由事物,關系,模型圖三個部分組成。

  1. 事物:UML模型中最基本的組成元素,可以把事實體解成漢語中的單詞和詞語
  2. 關系:關系是把事物緊密聯系在一起,可以把關系了解成漢語中的文法
  3. 模型圖:模型圖是事物和關系的可視化展示,可以把模型圖了解成漢語中的文章。

構造塊之事物

【UML模組化】(1) UML模組化的初了解,概述,組成,作用

事物分為結構事物,行為事物,分組事物,注解事物四種。

結構事物:指的是模型中的靜态部分,用于呈現概念或者實體的表現元素。

行為事物:指模型裡随着時空不斷變化的部分。

分組事物:可以把分組事物看成一個"盒子",模型可以在其中被分解。

注解事物:UML模型的解釋部分

下面就分别對這幾種事物進行介紹

結構事物

結構事物下有類,用例,接口,協作,活動類,元件,節點

  1. 類:類是指具有相同屬性、方法、關系和語義的對象的集合;
  2. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  3. 用例:定義了執行者(在系統外部和系統互動的人)和被考慮的系統之間的互動來實作的一個業務目标;
  4. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  5. 接口:定義行為規範,描述了類或元件對外可見的動作;
  6. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  7. 協作:合作完成某個特定任務的一組類及其關聯的集合
  8. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  9. 活動類:活動類的對象有一個或多個程序或線程。活動類和類很相象
  10. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  11. 元件:元件是實體的、可替換的部分,包含接口的集合
  12. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  13. 節點:系統在運作時存在的實體元素,代表一個可計算的資源
  14. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用

行為事物

行為事物分為互動,狀态機兩種

互動:由一組對象之間在特定上下文中,為達到特定的目的而進行的一系列消息交換而組成的動作;互動就是指時序圖中的消息。

【UML模組化】(1) UML模組化的初了解,概述,組成,作用

狀态機:狀态機由一系列對象的狀态組成。

【UML模組化】(1) UML模組化的初了解,概述,組成,作用

分組事物

分組事物隻有一個就是包

包:結構事物、動作事物甚至分組事物都有可能放在一個包中

【UML模組化】(1) UML模組化的初了解,概述,組成,作用

構造塊之四種基本關系

在UML中的關系有四種基本關系,分别是

  1. 泛化關系:就是繼承關系,子類和父類的關系,比如鳥與動物的關系就是泛化關系,實線的三角箭頭從子類指向父類。
  2. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  3. 實作關系:實作關系是實作類與接口之間的關系,比如大雁實作了飛翔的功能。他是虛線的三角箭頭從實作類指向接口。如下圖所示:
  4. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  5. 關聯關系:一組對象之間連接配接的結構關系,如下圖老師,學生與課程之間的關系。
  6. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  7. 老師和學生之間是雙向關聯關系,老師有多個學生,學生也可能有多名老師。但是學生與某個課程間的關系是單向關聯關系,一個學生可能要上多門課程,但是課程是個抽象的東西它不擁有學生。
  8. 依賴關系:一個類的實作必須依賴于其他類的協助,比如人依賴空氣。

    這四種關系的強弱順序是:泛化=實作>關聯>依賴

構造塊之模型圖

UML模型圖圖表共有十三種,本文将對其中比較常用的圖表進行詳細介紹。首先讓我們來看看這些圖表的介紹以及作用。

【UML模組化】(1) UML模組化的初了解,概述,組成,作用

UML模組化的圖表按照種類可以分為結構型圖表和行為型圖表。

結構型圖表:從不同的抽象和實作程度上描述了一個系統和系統建構的靜态結構,并且描述他們是如何直接關聯到一起的。

【UML模組化】(1) UML模組化的初了解,概述,組成,作用

該類型的圖表包括:

  1. 類圖(Class Diagram),
  2. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  3. 對象圖(Object Diagram),
  4. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  5. 包圖(Package Diagram),
  6. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  7. 元件圖(Component Diagram),
  8. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  9. 部署圖(Deployment Diagram),
  10. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  11. 複合結構圖(Composite Structure)
  12. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  13. 行為型圖表:展示系統中的對象的動态行為,它描述了一個系統中的對象如何随時間變化而變化。
  14. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  15. 該類型的圖表包括:
  16. 用例圖(Use Case Diagram),
  17. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  18. 活動圖(Activity Diagrams),
  19. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  20. 狀态圖(State Machine Diagram),
  21. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  22. 時序圖(Sequence Diagram),
  23. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  24. 通信圖(Communication Diagram)
  25. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  26. 互動概覽圖(Interaction Overview Diagram):
  27. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  28. 定時圖(Timing Diagram):
  29. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用

規則

【UML模組化】(1) UML模組化的初了解,概述,組成,作用
  1. 命名:為事物、關系和圖起名。
  2. 範圍:給一個名稱以特定含義的語境
  3. 可見性:怎樣讓其他人使用或者看見名稱
  4. 完整性:事物如何正确、一緻地互相聯系
  5. 執行:運作或模拟動态模型的含義是什麼

公共機制

【UML模組化】(1) UML模組化的初了解,概述,組成,作用

公共機制分為:規則說明,修飾,通用劃分,擴充機制

規則說明

  1. 規格說明提供了對構造塊的文法和語義的文字描述
  2. 規格說明用來描述系統的細節
  3. UML的規格說明提供了一個語義底版,它包含了一個系統的各個模型的所有部分,并且各部分互相聯系,并保持一緻。

    總而言之,規格說明就是UML圖的産品說明書

修飾

修飾:UML表示法中的每個元素都有一個基本符号,可以把各種修飾細節加到這個符号上。

【UML模組化】(1) UML模組化的初了解,概述,組成,作用

通用劃分

  1. 類/對象二分法(class/object dichotomy): 類是一個抽象,對象是這個抽象的一個具體表現形式,UML的每一個構造塊幾乎都存在像類/對象這樣的二分法。例如:用例和用例執行個體(場景),構件和構件執行個體,節點和節點執行個體等。
  2. 接口/實作二分法(interface/realization dichotomy)接口聲明了一個契約,而實作則表示了對該契約的具體實施,它負責如實地實作接口的完整語義。幾乎每一個UML的構造塊都有像接口/實作這樣的二分法。例如:用例和實作它們的協作,操作和實作他們的方法。如下圖所示:
  3. 【UML模組化】(1) UML模組化的初了解,概述,組成,作用

擴充機制

對UML圖示符号的擴充。包含:構造型Stereotype-标注值Taggedvalue-限制Constraint。如下圖所示:

【UML模組化】(1) UML模組化的初了解,概述,組成,作用

UML的應用範圍

【UML模組化】(1) UML模組化的初了解,概述,組成,作用

如上圖展示了UML在軟體生命周期中的應用範圍。

  1. 在需求分析階段可以通過用例圖來描述系統的使用者,以及系統有哪些功能
  2. 在分析與設計階段經常需要使用到類圖、包圖、元件圖幾種靜态視圖,以及所有動态視圖。靜态視圖用來描述系統的設計類,動态視圖用來确定任一時刻某一對象或者實體需要執行的操作,或者應該處于的狀态。
  3. 在開發階段根據UML圖表來編寫代碼,
  4. 在測試階段根據UML圖表來設計測試用例,使用活動圖來輔助測試
  5. 在部署階段根據部署圖來部署項目。

參考

​​UML官網​​

粉絲專屬福利

軟考資料:​​實用軟考資料​​

面試題:​​5G 的Java面試題​​

繼續閱讀