設計模式前篇
阿新 • • 發佈:2018-12-23
前言
很久很久以前勵志寫部落格,斷斷續續寫了一些。現在又勵志寫部落格,希望能堅持下去,歡迎各位監督。
學設計模式前,我們需要了解UML圖。
UML
UML定義
- 統一建模語言(Unifed Modeling Language)縮寫UML。
- 非專利的第三代建模和規約語言
UML特點
- UML是一種開發的方法
- 用於說明、視覺化、構建和編寫一個正在開發的面向物件的、團建密集系統的製品的的開放方法
- UML展現了一系列最佳工程實踐,這些最佳實踐在對大規模,複雜系統在建模方面,特別是在軟體架構層面已經被驗證有效。
UML2.2的分類
UML2.2中定義了14種圖示,分類如下:
- 結構式圖形
靜態圖(類圖,物件圖,包圖)
實現圖(元件圖,部署圖)
剖面圖
複合結構圖 - 行為式圖形
活動圖
狀態圖
用例圖 - 互動式圖形
UML類圖
- class Diagram:用於表示類、介面、例項等之間的相互關係
- 雖然名字叫類圖,但類圖中不只有類
技巧:
UML箭頭方向:從子類指向父類(只有知道對方才能指向對方)
記憶技巧-實現-繼承|虛線-實現
空心三角箭頭:繼承或實現
實線-繼承。is a 關係,擴充套件目的,不虛,很結實
虛線-實現,虛線代表“虛無”實體
記憶技巧-實現-關聯|虛線-依賴
- 虛線-依賴關係:臨時用一下,若即若離,虛無縹緲,若有若無,表示一種使用關係,一個類需要藉助另一個類來實現功能,一般是一個類使用另一個類作為引數使用,或者返回值。
- 實線-關聯關係:關係穩定,實打實的關係,表示 一個類物件和另一個類物件有關聯,通常是一個類中有另一個類作為屬性。
記憶技巧-空心稜形-聚合|實心稜形-組合
- 稜形就是一個盛東西的器皿(例如盤子)
- 聚合代表器皿裡可以放很多相同的東西,聚在一起(箭頭方向所指的類)
- 組合代表滿器皿裡已經有實體存在,生死與共。
記憶技巧-空心稜形-聚合
記憶技巧-實心稜形-組合
記憶技巧-空心稜形-聚合
- 整體和區域性的關係,兩者有著獨立的生命週期,是has a的關係
- 弱關係
- 消極的詞:弱-空
記憶技巧-實心稜形-組合
- 整體和區域性的關係,和聚合的關係相比,關係更加更加強烈,兩者具有相同的生命週期,contracts-a的關係
- 強關係
- 積極的詞:強-滿
常見的數字表達及其含義,假設有A類和B類,數字標記在A類 - 0…1 0或1個例項
- 0…* 0或多個例項
- 1…1 1個例項
- 1 只能有一個例項
- 1…* 至少有一個例項
UML時序圖
Sequence Diagram:是顯示物件之間關係的圖,這些物件是按時間的順序排序的。
時序圖中包含的建模元素有:
物件(Actor)、生命線(LifeLine)、
控制焦點(Focus of control)、訊息(Message)等。