UML定義 統一建模語言(Unified Modeling Language) 非專利的第三代建模和規約語言 UML是一種開放的方法 用於說明 可視化 構建和編寫一個正在開發的面向對象的 軟體密集系統的製品的開放方法。 UML 特點 UML 展現了一系列最佳工程實踐。 這些最佳事件在對大規模,複雜系 ...
UML定義
統一建模語言(Unified Modeling Language)
非專利的第三代建模和規約語言
UML是一種開放的方法
用於說明 可視化 構建和編寫一個正在開發的面向對象的 軟體密集系統的製品的開放方法。
UML 特點
UML 展現了一系列最佳工程實踐。 這些最佳事件在對大規模,複雜系統進行建模方面,特別是在軟體架構層次已經被驗證有效。
UML2.2分類
UML2.2中一共定義了14種圖示,分類如下:
結構式圖形:強調的是系統式的建模
行為式圖形:強調系統模型中觸發的事件
互動式圖形:屬於行為式圖形子集合,強調系統模型中資料流程
結構式圖形
靜態圖(類圖,對象圖,包圖)
實現圖(組件圖,部署圖)
剖面圖
複合結構圖
行為式圖形
活動圖
狀態圖
用例圖
互動式圖形
通信圖
交互概述圖(UML2.0)
時序圖(UML2.0)
時間圖(UML2.0)
UML類圖
Class Diagram:用於表示類,介面,實例等之間相互的靜態關係
雖然名字叫類圖,但是類中並不只有類
記憶技巧
UML 箭頭方向:從子類指向父類
提示: 可能會認為子類是以父類為基礎的,箭頭應從父類指向子類
記憶技巧-箭頭方向
定義子類時需要通過extends關鍵字指定父類
子類一定是知道父類定義的,但父類並不知道子類的定義
只有知道對方信息時才能指向對方
記憶技巧-實線-繼承|虛線-實現
空心三角箭頭:繼承或實現
實線-繼承,is a 關係,擴展目的,不虛,很結實
虛線-實現,虛線代表"虛" 無實體
記憶技巧-實線-關聯|虛線-依賴
虛線-依賴關係:臨時用一下,若即若離,虛無縹緲。若有若無
表示一種使用關係,一個類需要藉助另一個類來實現功能
一般是一個類使用另一個類作為參數使用,或作為返回值
實線-關聯關係:關係穩定,實打實的關係,鐵哥們
表示一個對象和另一個對象有關聯
通常是一個類有另一個類對象做為屬性
記憶技巧-空心菱形-聚合實心菱形-組合
菱形就是一個盛東西的器皿
聚合:代表空器皿里可以放很多相同的東西,聚在一起(箭頭方向所指的類)
組合:代表滿器皿里已經有實體結構的存在,生死與共。
實心菱形-組合
記憶技巧-空心菱形-聚合
整體和局部的關係,兩者有著獨立的生命周期,是has a 的關係
弱關係
消極的詞:弱-空
記憶技巧-空心菱形-組合
整體和局部的關係,和聚合的關係相比,關係更加強烈,兩者有相同的生命周期,contains-a的關係
強關係
積極的詞:強-滿
常見數字表達及含義,假設有A類和B類,數字標記在A類側
0..1: 0或1個實例 B類可以和0個或一個實例相關
0..*: 0或多個實例
1..1: 1個實例
1: 只能有1個實例
1..*: 至少有1個實例
UML時序圖
Sequence Diagram: 是顯示對象之間交互的圖,這些對象是按照時間順序排列的
時序圖中包括的建模元素主要有:
對象(Actor) 生命線(Lifeline) 控制焦點(Focus of control) ,消息(Message)等
類圖:
抽象類類名用斜體表示
+ : public
- : private
# : protected
~: 包許可權
屬性或者方法下麵下劃線: static
類圖:
摘自大話設計模式: