1. 程式人生 > >UMl之靜態圖(類圖、物件圖、包圖)

UMl之靜態圖(類圖、物件圖、包圖)

一、類圖

類是具有相似結構、行為和關係的一組物件的描述符。類圖是用於定義系統中的類,包括描述類的內部結構和類的關係。類圖主要用於描述系統的靜態結構。

       如何尋找類:

在待開發系統中尋找名詞。當然,在尋找的過程中,不可能一蹴而就,不可能一下就找全。我們可以在分析的過程中不斷完善。

       類的UML表示:

      

       屬性和操作中的可見性

       

       類圖的關係:

                                                注:區分聚合和組合。可以這樣理解,組合比聚合的關聯性更強。                                                                         eg

:(1)火車和發動機是聚合關係,沒有火車這個整體,發動機照樣可以存在,所以發動機照樣能存在;

         (2)List(目錄)和Node(節點)可以看做組合關係,沒有listnode也沒有存在的必要了。所以組合的關聯性更強。

類圖的構成:

      

       類圖的深入討論:

(1)可見性(visibility):圖符;在Rational Rose中自動生成右邊的程式碼。

       

(2)範圍(Scope):每個例項自己擁有自己的屬性和方法。

       (3)屬性(Attributes

       (4)操作(Operations

       (5)模板類(TemplateClasses

       (6)實用類(UtilityClasses

二、物件圖

       (1)什麼是:

描述一個系統在某個具體時刻的靜態結構。類圖描述的是所有可能的情況,也可以說物件圖示類圖在某一時刻的展現,物件圖是類圖的一個例項,再具體點就是描述系統在具體時間點上所包含的物件以及各個物件之間的關係。

       (2)構成元素:物件、連線、包。

三、包圖

       (1)包的作用:a、邏輯上將複雜的圖模組化(圖看上去簡單明瞭);

                                   b、組織原始碼。

       (2)包的圖符:

       

       (3)包中的元素:

類、用例、介面、構件、其它的包。

        (4)包與包的關係:泛化、細化、依賴(常見)。

       三個圖的細緻內容大概就是這樣,但是個中關係還有待開發。包、類、介面用起來都是相通的,就看怎樣理清系統的邏輯關係,怎樣構造了。請大家多多指教,方便畫機房收費系統的UML圖。