3分鐘學會UML 含30个示例集合

這是關於UML類圖的簡短教程。我們將討論它們是什麼,為什麼需要它們,一些技術性的東西,然後我們將深入研究一個例子。

什麼是類圖?

假設你必須設計一個系統。在實現一堆類之前,您需要對系統有一個概念性的理解 - 也就是說,我需要哪些類?這些課程有哪些功能和信息?他們如何互相交流?誰能看到這些課程?等等。這就是類圖的用武之地。類圖是實際開始編碼之前可視化系統中各類的一種巧妙方法它們是系統結構的靜態表示。

 

類圖示例:訂單系統

類圖示例:訂單系統

類圖示例:GUI

類圖還可以附加到類或關係的註釋。

類圖示例:GUI

為什麼我們需要類圖?

  1. 提前規劃和建模使編程更容易。
  2. 除此之外,對類圖進行更改很容易,而在事實有點煩人之後編碼不同的功能。
  3. 當有人想要建房子時,他們不只是抓住一把錘子去上班。他們需要有一個藍圖 - 一個設計計劃 - 所以他們可以分析和修改他們的系統。
  4. 您不需要太多技術/語言特定的知識來理解它。

UML中的類表示

類表示封裝狀態(屬性)和行為(操作)的概念。每個屬性都有一個類型。每個操作都有一個簽名類名是唯一的必填信息

UML類表示法

班級名稱:

  • 類的名稱出現在第一個分區中。

類屬性:

  • 屬性顯示在第二個分區中。
  • 冒號後顯示屬性類型。
  • 屬性映射到代碼中的成員變量(數據成員)。

班級操作(方法):

  • 操作顯示在第三個分區中。它們是班級提供的服務。
  • 方法的返回類型顯示在方法簽名末尾的冒號之後。
  • 方法參數的返回類型顯示在參數名稱後面的冒號之後。操作映射到代碼中的類方法
課程操作

類可見性

類中的屬性和操作名稱之前的+, - 和#符號表示屬性和操作的可見性。

類可見性
  • +表示公共屬性或操作
  • - 表示私有屬性或操作
  • #表示受保護的屬性或操作

參數方向性

操作(方法)中的每個參數可以表示為in,outinout,其指定其相對於調用者的方向。此方向性顯示在參數名稱之前。

參數方向性

類圖的視角

透視的選擇取決於您在開發過程中的距離。例如,域模型的製定過程中,您很少會超越概念角度分析模型通常包含概念和規範視角的混合設計模型開發通常首先著重於規範視角,並演變為實現視角

可以從各種角度解釋圖表:

  • 概念:代表域中的概念
  • 規範:重點是軟件中抽像數據類型(ADT)的接口
  • 實現:描述類如何實現其接口

視角影響要提供的細節量以及值得呈現的關係類型。如上所述,類名是唯一的必填信息。

類圖的視角

關係班級之間的關係

繼承(或泛化):

泛化是更通用的分類器和更具體的分類器之間的分類關係。特定分類器的每個實例也是一般分類器的間接實例。因此,特定分類器繼承了更通用的分類器的特徵。

  • 表示“is-a”關係。
  • 抽像類名稱以斜體顯示。
  • SubClass1和SubClass2是SuperClass的特化。

下圖顯示了繼承層次結構的示例。SubClass1和SubClass2派生自SuperClass。該關係顯示為實線,空心箭頭指向子元素到父元素。

繼承(或泛化)

 

 

繼承示例 - 形狀

下圖顯示了具有兩種樣式的繼承示例。雖然連接器的繪製方式不同,但它們在語義上是等效的。

繼承示例 - 形狀


嘗試現在繪製UML類圖

您已經了解了類圖是什麼以及如何繪製類圖。是時候繪製一個自己的類圖。獲取Visual Paradigm Community Edition,一個免費的UML軟件,並使用免費的Class Diagram工具創建自己的類圖。它易於使用且直觀。

免費下載


Visual Paradigm International