UML概念模型
UML(Unified Modeling Language):統一建模語言,為面向對象開發系統的產品進行說明、可視化、和編制文檔的標准語言
面向對象程序設計
面向對象基本概念:對象、類、抽象化、封裝、集成、多態
面向對象程序設計過程:分析->設計->采用面向對象語言編程實現
UML概覽
UML核心是圖表,可以分為結構圖和行為圖。
結構圖:由靜態圖組成,如類圖、對象圖等
行為圖:如序列圖、協作圖等
UML類圖:描述一個系統中的對象和他們的關系
UML對象圖:是類圖的一個實例,用於建立系統的原型
UML組件圖:描述系統的靜態實現圖。組件包括物理組件,如庫、檔案、文件夾等,用於可視化的實現。
UML部署圖:描述一個系統的靜態部署視圖。
UML用例圖:描述角色以及角色與用例之間的連接關系。
UML交互圖:包括序列圖和協作圖。序列圖強調對象之間的消息發送順序,顯示對象之間的交互;寫作圖描述對象間的寫作關系。
UML序列圖:顯示參與者如何以一系列順序的步驟與系統的對象交互的模型。
UML 協作圖:協作圖和序列圖相似,是另一種形式的交互圖;如果強調時間和順序,則使用序列圖;如果強調上下級關系,則選擇協作圖。
UML狀態圖:描述描述類的對象所有可能的狀態,以及事件發生時狀態的轉移條件。
UML活動圖:活動圖描述滿足用例要求所要進行的活動以及活動間的約束關系,有利於識別並行活動,強調對象間的控制流程。
UML構建模塊
UML構件塊定義包括事物、關系和圖
事物:事物是抽象化的最終結果,分為結構事物、行為事物、分組事物和注釋事物
事物 |
解釋 |
圖例 |
結構事物 |
結構事物是模型中的靜態部分,用以呈現概念或實體的表現元素 |
|
類 |
具有相同屬性、方法、關系和語義的對象的集合 |
![]() |
接口 |
是指類或組件所提供的服務(操作) |
![]() |
協作 |
定義元素之間的相互作用 |
![]() |
用例 |
執行者(在系統外部和系統交互的人)和被考慮的系統之間的交互 |
![]() |
組件 |
描述物理系統的一部分 |
![]() |
節點 |
定義為在運行時存在的物理元素 |
![]() |
行為事物 |
行為事物指的是 UML 模型中的動態部分 |
|
交互 |
包括一組元素之間的消息交換 |
![]() |
狀態機 |
由一系列對象的狀態組成 |
![]() |
分組事物 |
目前只有一種分組事物,即包。包純粹是概念上的,只存在於開發階段,結構事物、動作事物甚至分組事物都有可能放在一個包中。 |
|
包 |
封裝是唯一一個分組事物可收集結構和行為的東西 |
![]() |
注釋事物 |
解釋UML模型元素 |
|
注釋 |
注釋用於渲染意見,約束等的UML元素 |
![]() |
關系 :顯示元素是如何彼此相關聯,描述的一個應用程序的功能
關系 |
解釋 |
圖例 |
依賴關系 |
其中一個事物的變化也影響到另一個事物 |
![]() |
協作 |
描述一組對象之間連接的結構關系,如聚合關系(描述了整體和部分間的結構關系) |
![]() |
泛化 |
描述了在對象世界中的繼承關系,是一種一般化-特殊化的關系; |
![]() |
實現 |
類之間的語義關系,其中的一個類指定了由另一個類保證執行的契約 |
![]() |