UML總結——UML的九種圖

        UML是Unified Modeling Language的縮寫,它是一種建模語言,是用來設計軟件藍圖的可視化建模語言。它支持面向對象系統的分析、設計、實現和交付等各個環節,可以用於系統的理解、設計、瀏覽、維護和信息控制。UML是由3部分構成的,其中基本構造塊中的圖是UML中最重要的部分。

我先介紹一下這九種圖的概念:

       (1)、用例圖(use case diagrams):用來描述用戶的需求,從用戶的角度描述系統的功能,並指出個功能的執行者,強調誰在使用系統,系統爲執行者完成哪些功能。

       ( 2)、類圖(class diagrams):用於定義系統中的類,包括描述類的內部結構和類之間的關係。類圖主要用於描述系統的靜態結構。

       (3)、對象圖(object diagrams):   對象圖是類圖的一個實例,描述了系統在具體時間點上所包含的對象以及各個對象之間的關係。

       (4)狀態圖(statechart diagrams):用來描述類的對象所有可能的狀態以及事件發生時狀態的轉移條件。

       (5)活動圖(activity diagrams):用來描述滿足用例要求所要進行的活動以及活動間的約束關係,使用活動圖有利於識別系統的並行活動。

       (6)序列圖(sequence diagrams):描述對象之間的交互順序,着重體現對象間消息傳遞的時間順序,強調對象之間消息的發送順序,同時也顯示對象之間的交互過程。

       (7)協作圖(collaboration diagrams):描述對象之間的合作關係,更側重於說明哪些對象之間有消息的傳遞。

      (8)、構件圖(component diagrams):構件圖用來描述代碼構件的物理結構以及各構件之間的依賴關係。一個構件可以使一個資源文件、一個二進制文件或者一個可執行文件。

      (9)、實施圖(deployment diagrams):部署圖定義了系統中硬件的物理體系結構,用來描述實際的物理設備以及它們之間的連接關係。

概念說完了,下面我來說一下它們之間的聯繫吧:

       (1)類圖和對象圖:首先它們都是靜態圖,其中對象圖是類圖的一個實例。它們的區別主要有以下幾點:

                                                         類圖                                   對象圖

            類具有3個分欄:名稱、屬性和操作

      對象只有兩個分欄:名稱和屬性

              在類的名稱分欄中只有類名

 對象的名稱形式爲“對象名:類名”,匿名對象的名稱形式爲“:類名”

           類的屬性分欄定義了所有屬性的特徵

對象則只定義了屬性的當前值,以便用於測試用例或例子中

                 類中列出了操作

對象圖中不包括操作,因爲對於同屬於同一個類的對象而言,其操作是相同的

類使用關聯連接,關聯使用名稱、角色、多重性以及約束等特徵定義。類代表的是對對象的分類所以必須說明可以參與關聯的對象的數目。

對象使用鏈連接、鏈擁有名稱、角色,但是沒有多重性。對象代表的是單獨的實體,所有的鏈都是一對一的,因此不涉及到多重性。

         (2)狀態圖和活動圖:首先它們都屬於行爲圖,而行爲圖就是用來描述系統的動態模型和對象之間的交互關係的圖。從概念上來看它們的區別在於:狀態圖是用於確定某個類(或者說是對象)的各種狀態轉換,而活動圖則是表示某個過程中步驟的先後順序。舉一個例子來說冰加熱變成水蒸氣的過程,1.冰塊融化成水;2.水蒸發變成水蒸氣。這屬於活動圖的內容,冰、水、水蒸氣三種表示了水的三種狀態這屬於狀態圖的內容。

       (3)序列圖和協作圖:它們都屬於交互圖,交互圖是用來描述對象之間的交互關係的圖。同樣是從概念上來看它們的區別:序列圖着重體現了對象間消息傳遞的時間順序,強調對象之間消息的發送順序,同時也顯示對象之間的交互過程;而協作圖也像序列圖一樣傳遞相同的信息,但它不關心什麼時候消息被傳遞,只關心對象的角色。

小結:

        學習UML是爲了更好的進行軟件開發,UML視頻的學習已經基本完成,但是這還遠遠不夠,對UML的學習最重要的是實踐。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章