更新於 2023/08/21閱讀時間約 2 分鐘

實戰系列『影像處理軟體設計』- [9] 物件導向方法:設計模型(下)

一、動態模型

動態模型設計一般都是在類別模型設計完成後開始,此階段需要使用類別模型的類別。

動態模型設計不需要應用「設計原則」和「設計模式」,只需對照「使用案例模型」,並根據使用案例的特點,選一個適合的動態模型表述即可。

二、模型分類

參考 UML 標準,常見的動態模型如下:

  • 狀態模型→主要描述物件生命週期的狀態變化。
  • 活動模型→主要用來描述一個工作流程或計算流程。
  • 序列模型→主要用來描述物件按照時間順序組織的訊息互動過程,其關鍵特徵是強調按照「時間順序」組織物件的互動。
  • 協作模型→主要用來描述物件之間的關聯組知的訊息互動過程,其關鍵特徵是強調「物件關係」組織物件的互動。

(1) 建模實踐

基本上動態模型都可以從「使用案例模型」推導出來,但狀態模型會比其他模型複雜一些,因為需要綜合多個使用案例模型,從中提取出和某個物件狀態相關的內容,再統一設計狀態模型。

從使用案例模型推導出動態模型是一個「分解和分配」的過程。

(2) 建模技巧

在實際的專案進行過程中,其實每個子專案或功能,並不會都使用動態模型來描述,這主要是程式設計人員效率方面的考量。

設計動態模型主要是便於思考和理解實作過程;如果專案比較簡單,通常很容易理解,也就沒必要設計動態模型了。

考慮到效率和效果兩個因素,一般只需要針對一些關鍵、核心及複雜的專案或功能,進行動態模型設計即可。

但要注意,千萬不要直接按照動態模型撰寫程式碼,模型不等於虛擬碼、更不等於程式碼,模型的主要目的是指導程式碼的撰寫,但並非程式碼的文字敘述。

三、本章總結

  1. 設計階段將輸出設計模型。
  2. 物件導向設計更像是一門藝術。
  3. 設計模型主要包含兩個部分:靜態模型、動態模型。
  4. 從領域模型可以得到最初的設計類別。
  5. 「設計原則」和「設計模式」可以指導做出更好的物件導向程式設計。
  6. 設計原則主要是指 SOLID 原則。
  7. 設計模式是指 GoF 提出的設計模式。
  8. 根據框架或者規範的要求,拆分輔助類別。
  9. 動態模型主要有 4 種:狀態模型、活動模型、序列模型、協作模型。
  10. 動態建模不需要面面俱到。
  11. 動態建模不等於程式碼。
分享至
成為作者繼續創作的動力吧!
從 Google News 追蹤更多 vocus 的最新精選內容從 Google News 追蹤更多 vocus 的最新精選內容

作者的相關文章

一個工程師的創業之旅的沙龍 的其他內容

你可能也想看

發表回應

成為會員 後即可發表留言
© 2024 vocus All rights reserved.