uml是物件導向分析與設計的專業語言,是軟體開發過程中相關人員溝通交流的語言,因此它在表達和理解抽象的軟體上起著重要的作用。
uml圖分為兩大類:
動態圖:用來描述系統行為的各個方面
查閱uml官方文件,會發現關於uml的標準規範已經是十分的完善,但是由於uml想要表達太多的語義,因此uml看起來也顯得稍微複雜和繁瑣。
雖然uml圖內容繁多,但是作為普通的編碼人員,基本的、常用的uml概念和知識是需要掌握的,uml圖於軟體開發人員,類似施工圖於施工員、cad圖於工程設計師、測繪圖於測繪員,都是一種專業的、高效的交流溝通工具,有了這個工具,既在表達上和理解上更加清晰,又體現了從業人員的專業性。
作為一線編碼人員,最常見的就是類圖和時序圖。
uml類圖用於展示類及其相互之間的關係。
類圖包含兩種元素:
其中類包含三個部分:類名、屬性名、操作名,其中屬性名和操作名還有可見性的概念,+號表示public, -號表示private,#表示protected,預設表示包可見性。
例如下圖:
另外,介面表示為:
類圖中的關係分為五大類:
【泛化關係】:是一種繼承關係,表示一般與特殊的關係,它指定了子類如何特化父類的所有特徵和行為。例如:老虎是動物的一種,即有老虎的特性也有動物的共性。
【箭頭指向】:帶空心三角箭頭的實線,箭頭指向父類
2. 實現關係
【實現關係】:是一種類與介面的關係,表示類是介面所有特徵和行為的實現.
【箭頭指向】:帶空心三角箭頭的虛線,箭頭指向介面
【關聯關係】:是一種擁有的關係,它使乙個類知道另乙個類的屬性和方法;如:老師與學生,丈夫與妻子關聯可以是雙向的,也可以是單向的。雙向的關聯可以有兩個箭頭或者沒有箭頭,單向的關聯有乙個箭頭。
【**體現】:成員變數
【箭頭及指向】:帶普通箭頭的實心線,指向被擁有者
【聚合關係】:是整體與部分的關係,且部分可以離開整體而單獨存在。如車和輪胎是整體和部分的關係,輪胎離開車仍然可以存在。
聚合關係是關聯關係的一種,是強的關聯關係;關聯和聚合在語法上無法區分,必須考察具體的邏輯關係。
【**體現】:成員變數
【箭頭及指向】:帶空心菱形的實心線,菱形指向整體
【組合關係】:是整體與部分的關係,但部分不能離開整體而單獨存在。如公司和部門是整體和部分的關係,沒有公司就不存在部門。
組合關係是關聯關係的一種,是比聚合關係還要強的關係,它要求普通的聚合關係中代表整體的物件負責代表部分的物件的生命週期。
【**體現】:成員變數
【箭頭及指向】:帶實心菱形的實線,菱形指向整體
【依賴關係】:是一種使用的關係,即乙個類的實現需要另乙個類的協助,所以要盡量不使用雙向的互相依賴.
【**表現】:區域性變數、方法的引數或者對靜態方法的呼叫
【箭頭及指向】:帶箭頭的虛線,指向被使用者
各種關係的強弱順序:
泛化 = 實現 > 組合 > 聚合 > 關聯 > 依賴
面這張uml圖,比較形象地展示了各種類圖關係:
時序圖(sequence diagram)是顯示物件之間互動的圖,這些物件是按時間順序排列的。時序圖中顯示的是參與互動的物件及其物件之間訊息互動的順序。
時序的元素有:
訊息一般分為同步訊息(synchronous message),非同步訊息(asynchronous message)和返回訊息(return message)
例子:
UML基本概念
因為不是常用,總是記不住,記錄下來,方便查閱。以下對uml 中幾個概念進行介紹,類 介面 關係。1.類 類描述分為三部分,頂部為 類名,中間為 屬性,下層為 方法。在屬性或方法前面有三種符號分別是 代表屬性或方法的可見性級別 public private protected 類名 如果是抽象類,類名...
Uml概念複習2
四 狀態圖和活 1.狀態圖的作用,組成元素以及每一部分元素的概念含義 作用 狀態機圖是系統分析的常用工具之一,他通過建立類物件的生存週期模型來描述物件隨時間變化的動態行為.組成元素 狀態和轉換 1.狀態 定義物件在其生命週期中的條件或狀況 組成部分 1.名稱 2.進入 退出動作 3.子狀態 轉換的組...
UML概念模型
uml unified modeling language 統一建模語言,為物件導向開發系統的產品進行說明 視覺化 和編制文件的標準語言 物件導向程式設計 物件導向基本概念 物件 類 抽象化 封裝 整合 多型 物件導向程式設計過程 分析 設計 採用物件導向語言程式設計實現 uml核心是圖表,可以分為...