de_DEen_USes_ESfa_IRfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

類圖入門:UML建模初學者指南

統一建模語言(UML)的類圖是用於視覺化和設計系統靜態結構的重要工具。它們提供了一種清晰且簡明的方式,來表示系統內的類、介面、合作關係及其關係。本指南將帶你了解UML類圖的核心概念,並提供範例和實用技巧,幫助你掌握UML這一基本面向。

What is Class Diagram?

類圖的目的

類圖是一種結構圖,用以顯示一組類、介面與合作關係及其關係。它是建模物件導向系統中最常見的圖表。類圖著重於系統的靜態設計觀點,著重於詞彙、合作關係或結構。它們是組件圖與部署圖的基礎。

靜態觀點

類圖代表系統的靜態觀點,表示它們不顯示與時間相關的行為。它們以獨立於時間的方式呈現模型的元素,展現出可能存在于現實世界、軟體或硬體實作,或抽象形式中的有意義且有用的觀念。這些圖表可以包含代表現實世界概念、抽象概念、實作概念或電腦概念的元素。

類圖的關鍵元素

類是一種一組物件的描述,這些物件具有相同的屬性、操作、關係與語義。它是系統詞彙中事物的抽象。類是最常見的UML建模元素,並可用來表示軟體、硬體或概念性事物。

屬性和操作

  • 屬性:我們感興趣的類的屬性。
  • 操作:該類的物件所能執行的事項。

符號表示

類的符號表示是一個矩形,其中包含一個必填的名稱區塊。可選的區塊可用來顯示類的屬性和操作。

意義層級

類可以在不同的意義層級上存在,包括分析層級、設計層級與實作層級。

抽象類與具體類

  • 抽象類: 一個無法直接實例化的類。其名稱可能是斜體。
  • 具體類: 一個可以擁有個別實例的類。

類範圍屬性和操作

一個類可以被視為一個全域物件。類範圍的屬性是這個隱含物件的屬性,而類範圍的操作則作用於類本身,而非作用於物件。

造型

可以使用尖括號(« 和 »)來顯示類的造型。造型表示模型元素的特殊類別或語法中的新術語。

建立操作

一個類可能有一個建立操作(建構函數),在類中以底線標示的操作。

關係

類圖也顯示類之間的關係,包括:

  • 關聯: 描述給定類中個別物件之間的語義連結。
  • 泛化: 將父分類器(超類)的通用描述與更專門的子分類器(子類)相連。
  • 依賴: 顯示元素之間的關係,例如抽象層級、範本參數、權限或使用方式。

實例與物件

  • 物件: 類的一個實例。它是一個具有身份的個體,其結構和行為由類所描述。
  • 狀態: 物件屬性的目前值。

符號

UML實例規格(物件)的符號是一個方框,其中包含一個必填的名稱欄位,該欄位包含物件名稱、「:」以及實例化類的名稱。可選的第二個欄位可顯示槽位(屬性和其目前值)。實例的名稱是底線標示的。

圖表內容

實例可以出現在類圖和物件圖中。類可以透過虛線箭頭連接到其實例,以表示依賴關係。

圖示內容

類圖包含類別、介面、合作關係與關係。它們也可能包含註解與約束。類圖可以包含套件或子系統,以將模型元素分組為較大的單元。

類圖的用途

類圖用於模擬系統的靜態設計視圖。它們可以用於:

  • 模擬系統的詞彙。
  • 模擬類別的合作關係。
  • 模擬邏輯資料庫結構。

與其他圖示的關係

類圖與其他圖示相關,例如:

  • 物件圖:顯示類別的實例及其關係。
  • 元件圖部署圖:與類圖類似,但分別包含元件與節點。

抽象

類圖是一種抽象形式,提供系統的簡化視圖,在保留必要細節的同時隱藏不必要的複雜性。

多個圖示

通常需要多個類圖來呈現系統的完整靜態視圖。每個圖示應專注於系統的特定方面。

圖示作為投影

類圖是對模型的一種投影,是元素集合的圖形化呈現。

正向與逆向工程

類圖可用於模型與程式碼的正向與逆向工程。

元模型

UML 的抽象語法使用 MOF 模型來呈現 UML 語法。這些 MOF 模型使用 UML 結構圖的一個子集。抽象語法圖中的方框為 «元類別»。UML 的元素是這些 «元類別» 的實例。

類圖範例

圖書館系統

讓我們以一個簡單的圖書館系統為例,來說明類圖的核心概念。

類別

  • 書籍: 代表圖書館中的一本書。
    • 屬性:書名作者ISBN
    • 操作:借閱()歸還()
  • 讀者: 代表圖書館的讀者。
    • 屬性:姓名會員編號
    • 操作:借書()還書()
  • 圖書館員: 代表圖書館員。
    • 屬性:姓名員工編號
    • 操作:新增書籍()removeBook()

關係

  • 關聯:
    • 一個 讀者 可以借閱多本 本。
    • 一個 圖書館員 可以管理多本 本。
  • 一般化:
    • 讀者 和 圖書館員 可以被一般化為一個  類別。
  • 依賴:
    • 這個 圖書館系統 類別依賴於 讀者,以及 圖書館員.

實例

  • 物件:一個 書籍 具有 標題 = 「UML入門」, 作者 = 「John Doe」, ISBN = “1234567890”.

電子商務系統

讓我們考慮一個電子商務系統,以進一步說明這些概念。

類別

  • 產品:代表商店中的產品。
    • 屬性: 名稱價格庫存
    • 操作: 加入購物車()移除購物車()
  • 顧客: 代表一位客戶。
    • 屬性:姓名客戶編號
    • 操作:下訂單()查看訂單歷史()
  • 訂單: 代表由客戶下的訂單。
    • 屬性:訂單編號日期狀態
    • 操作:計算總金額()發貨訂單()

關係

  • 關聯:
    • 一位客戶可以下多筆訂單
    • 一位訂單可以包含多個產品個。
  • 泛化:
    • 客戶管理員可以泛化為一個使用者類。
  • 依賴關係:
    • 這個電子商務系統類依賴於產品客戶,以及訂單.

實例

  • 物件:一個產品的實例,其中名稱 = 「筆電」,價格 = “$999.99”, 庫存 = “100”.

結論

理解 UML 類圖的核心概念是有效模擬系統靜態結構的基礎。類圖提供了一種清晰且簡明的方式來表示類、其屬性、操作和關係。透過掌握這些概念並應用於實際案例,您可以創建具有意義且實用的圖表,以捕捉系統設計的本質。無論您是經驗豐富的開發人員還是剛進入此領域的新手,UML 類圖都是用於視覺化和溝通複雜系統的強大工具。

祝您建模愉快!

參考資料

  1. UML 類圖教程
    • UML 類圖教程 
    • 這份全面的指南深入探討了 UML 類圖,包括如何有效地創建和使用它們。同時也突顯了 Visual Paradigm 社區版的功能,這是一款免費的 UML 軟體。
  2. 免費類圖工具
    • 免費類圖工具 
    • Visual Paradigm Online 提供免費版本,用於創建類圖及其他 UML 圖表。此工具使用者友善,支援多種圖表類型,且不限制圖表或圖形的數量。
  3. 什麼是類圖?
    • 什麼是類圖?
    • 本文解釋了 UML 中類圖的基本概念,包括其結構與組成部分。同時也提供了使用 Visual Paradigm 創建這些圖表的實用建議。
  4. 如何繪製類圖?
    • 如何繪製類圖? 
    • 使用 Visual Paradigm 繪製類圖的逐步指南,包含建立列舉和連接成員的技巧。
  5. 線上類圖軟體
    • 線上類圖軟體 
    • Visual Paradigm 的線上類圖工具設計快速且直覺,讓使用者能快速且協作地創建專業的 UML 圖表。
  6. UML 圖表:全面指南
    • UML 圖表:全面指南 
    • 本指南涵蓋了各種類型的 UML 圖表,包括類圖,以及它們在軟體工程中的重要性。它探討了類圖如何呈現系統的靜態結構以及類之間的關係。
  7. UML 類圖全面指南
    • UML 類圖全面指南 
    • 本文提供了 UML 類圖的詳細概述,包括其組成部分,以及它們在系統設計不同階段的應用方式。同時也提及使用 Visual Paradigm 來創建這些圖表。
  8. Visual Paradigm 中的 UML 圖表入門
  9. 透過 Visual Paradigm 學習類圖
  10. 探索 UML:14 種圖表類型的概覽及其在敏捷環境中的相關性

這些參考資料提供了對類圖和 UML 的全面理解,並附有使用 Visual Paradigm 建立這些圖表的實用指南。

Leave a Reply