UML - 概述



UML 是一種用於指定、視覺化、構建和記錄軟體系統構件的標準語言。

UML 由物件管理組 (OMG) 建立,UML 1.0 規範草案於 1997 年 1 月提交給 OMG。

OMG 不斷努力建立真正意義上的行業標準。

  • UML 代表 **統一建模語言**。

  • UML 不同於其他常見的程式語言,如 C++、Java、COBOL 等。

  • UML 是一種圖形語言,用於建立軟體藍圖。

  • UML 可以被描述為一種通用的視覺化建模語言,用於視覺化、指定、構建和記錄軟體系統。

  • 雖然 UML 通常用於建模軟體系統,但它並不侷限於此。它也用於建模非軟體系統。例如,製造單元中的流程流程等。

UML 不是程式語言,但可以使用工具使用 UML 圖生成各種語言的程式碼。UML 與面向物件分析和設計有直接關係。經過一些標準化後,UML 已成為 OMG 標準。

UML 的目標

一圖勝千言,這個習語絕對適合描述 UML。面向物件的概念比 UML 早得多。在那個時候,還沒有標準的方法來組織和整合面向物件開發。正是在那時,UML 出現了。

開發 UML 有許多目標,但最重要的目標是定義一些通用的建模語言,所有建模人員都可以使用,並且它也需要易於理解和使用。

UML 圖不僅為開發人員製作,也為業務使用者、普通人和任何有興趣瞭解系統的人制作。系統可以是軟體或非軟體系統。因此必須明確,UML 不是開發方法,而是伴隨流程使其成為一個成功的系統。

總之,UML 的目標可以定義為一種簡單的建模機制,用於建模當今複雜環境中所有可能的實際系統。

UML 的概念模型

要了解 UML 的概念模型,首先我們需要澄清什麼是概念模型?以及為什麼需要概念模型?

  • 概念模型可以定義為由概念及其關係組成的模型。

  • 概念模型是在繪製 UML 圖之前的第一步。它有助於理解現實世界中的實體以及它們如何相互互動。

由於 UML 描述了即時系統,因此建立概念模型然後逐步進行非常重要。可以透過學習以下三個主要元素來掌握 UML 的概念模型:

  • UML 構建塊
  • 連線構建塊的規則
  • UML 的通用機制

面向物件的概念

UML 可以被描述為面向物件 (OO) 分析和設計的繼承者。

一個物件包含資料和控制資料的操作。資料表示物件的狀態。類描述一個物件,它們也形成一個層次結構來模擬現實世界系統。層次結構表示為繼承,類也可以根據需要以不同的方式關聯。

物件是我們周圍存在的現實世界實體,抽象、封裝、繼承和多型等基本概念都可以用 UML 表示。

UML 足夠強大,可以表示面向物件分析和設計中存在的所有概念。UML 圖僅表示面向物件的概念。因此,在學習 UML 之前,詳細瞭解 OO 概念變得很重要。

以下是面向物件世界的一些基本概念:

  • **物件** - 物件表示一個實體,是基本的構建塊。

  • **類** - 類是物件的藍圖。

  • **抽象** - 抽象表示現實世界實體的行為。

  • **封裝** - 封裝是將資料繫結在一起並將其隱藏在外部世界的機制。

  • **繼承** - 繼承是從現有類建立新類的機制。

  • **多型** - 它定義了以不同形式存在的機制。

OO 分析和設計

OO 可以定義為一項調查,更具體地說,它是對物件的調查。設計意味著已識別物件的協作。

因此,瞭解 OO 分析和設計概念非常重要。OO 分析的最重要目的是識別要設計的系統的物件。此分析也針對現有系統進行。現在,只有當我們能夠以一種可以識別物件的方式開始思考時,才能進行有效的分析。在識別物件後,識別它們的關係,最後生成設計。

OO 分析和設計的目的可以描述為:

  • 識別系統的物件。

  • 識別它們之間的關係。

  • 進行設計,可以使用 OO 語言將其轉換為可執行檔案。

OO 概念應用和實現的三個基本步驟可以定義為

OO Analysis → OO Design → OO implementation using OO languages

以上三點可以詳細描述為:

  • 在 OO 分析期間,最重要的目的是識別物件並以適當的方式對其進行描述。如果這些物件被有效地識別,那麼接下來的設計工作就很容易了。應該用職責來識別物件。職責是物件執行的功能。每個物件都有一些要執行的職責。當這些職責協同工作時,系統的目的就實現了。

  • 第二階段是 OO 設計。在此階段,重點放在需求及其滿足上。在此階段,物件根據其預期的關聯進行協作。關聯完成後,設計也完成了。

  • 第三階段是 OO 實現。在此階段,使用 OO 語言(如 Java、C++ 等)實現設計。

UML 在 OO 設計中的作用

UML 是一種用於建模軟體和非軟體系統的建模語言。雖然 UML 用於非軟體系統,但重點是建模 OO 軟體應用程式。迄今為止討論的大多數 UML 圖都用於建模不同的方面,例如靜態、動態等。無論方面是什麼,工件都只是物件。

如果我們檢視類圖、物件圖、協作圖、互動圖,所有這些基本上都是基於物件設計的。

因此,瞭解 OO 設計和 UML 之間的關係非常重要。OO 設計根據需要轉換為 UML 圖。在詳細瞭解 UML 之前,應先正確學習 OO 概念。一旦完成 OO 分析和設計,下一步就非常容易了。來自 OO 分析和設計的資訊是 UML 圖的輸入。

廣告

© . All rights reserved.