DDD理論學習系列(5) 統一建模語言

2021-10-10 08:50:50 字數 834 閱讀 2227

1.引言

上一節講解了領域模型,領域模型主要是將業務中涉及到的概念以物件導向的思想進行抽象,抽象出實體物件,確定實體所對應的方法和屬性,以及實體之間的關係。然後將這些實體和實體之間的關係以某種形式(比如uml、圖形、**、文字描述等)展現出來。而領域模型是領域建模的結果,那如何建模呢?我們可以借助於uml。

我們知道uml(統一建模語言)是一種用於繪製軟體概念圖的圖形符號。在和他人交流以及幫助解決設計問題方法,圖示是最有效的。在ddd中我們習慣用uml進行領域建模,所以為了後續章節的展開,我們需要而且必須熟悉常用uml的使用。之前也寫了一篇文章,想要學習設計模式,你得先會看類圖,一張圖讀懂uml,介紹了一些基本的用法,不妨一看。

下面就開始簡單介紹下幾種常見的uml的基本用法。

uml的級別和類別

在《uml精粹》中,uml主要被分為三個級別:

概念級別:用來描述問題領域中概念和抽象的一種速記方法,沒有比較嚴格的語義規則。和源**之間沒有很強的關聯性。

規格說明級別:描繪問題的解決方案,目的是為了能夠轉換成源**。要遵循嚴格的語義規則。

實現級別:用來描繪已有的源**,如類圖。要遵循嚴格的語義規則。

uml主要有三種圖示類別:

靜態圖(static diagram):描述了類、物件、資料結構以及它們之間的關係,展現出軟體元素間不變的邏輯結構。類圖、物件圖都是靜態圖。

動態圖(dynamci diagram):展示軟體實體在執行過程中是如何轉換的,其中描述了執行流程或實體改變狀態的方式。順序圖、協作圖、狀態圖都是狀態圖。

物理圖(physical diagram):展示軟體實體不變的物理結構,描述了諸如原始檔、庫、二進位制檔案、資料檔案等物理實體以及它們之間的關係。

DDD理論學習系列(11) 工廠

ddd理論學習系列 案例及目錄 在針對大型的複雜領域進行建模時,聚合 實體和值物件之間的依賴關係可能會變得十分複雜。在某個物件中為了確保其依賴物件的有效例項被建立,需要深入了解物件例項化邏輯,我們可能需要載入其他相關物件,且可能為了保持其他物件的領域不變性增加了額外的業務邏輯,這樣即打破了領域的單一...

DDD理論學習系列 案例及目錄

目錄ddd理論學習系列 1 通用語言 ddd理論學習系列 2 領域 ddd理論學習系列 3 限界上下文 ddd理論學習系列 4 領域模型 ddd理論學習系列 5 統一建模語言 ddd理論學習系列 6 實體 ddd理論學習系列 7 值物件 ddd理論學習系列 8 應用服務 領域服務 ddd理論學習系列...

DDD理論學習系列(4) 領域模型

ddd理論學習系列目錄 我們還是先來拆詞理解,領域模型可以拆為 領域 和 模型 二詞。把兩個詞結合起來,我們給領域模型下個定義 領域模型是對我們軟體系統中要解決問題的抽象表達。這個理解還是很生澀,沒關係,容我娓娓道來。我們知道,軟體開發過程主要包括 需求分析 概要設計 詳細設計 編碼 測試 軟體交付...