2 領域概念

2021-10-09 02:06:31 字數 1173 閱讀 5269

模型關聯越少越好

簡化關聯

1.規定乙個遍歷方向

2.新增限定符(如乙個國家有過很多**,但每個時期只有乙個,時期就是限定符)

3.消除不必要的關聯

實體具有生命週期,在生命週期內可跟蹤

簡單的講,如果我們要追蹤乙個物體,那麼他就是乙個實體,實體的資訊不一定要儲存在資料庫中,例如:

站點,我們要時刻掌握站點的資訊,在以便在業務中對站點進行操作,這時站點就是實體,而這個實體的標識是完全路徑名,的資訊(如的大小)我們可以利用io函式從中獲取

值物件沒有標識,無生命週期,生成後不可變

值物件可引用實體

值物件可被實體引用,只能替換,不能修改

值物件常被用作引數才物件之間傳輸

將實體的多個屬性封裝為值物件的前提是,這些屬性是不可修改的,而且需要一起生成

應盡量清楚值物件之間的雙向關聯,如果必須這麼關聯,那有沒有可能將其中乙個實體誤認為是值物件

領域服務經常以 動詞 命名,如fundstransfer(資金轉賬)

如果有乙個動作,會在很多地方呼叫,且將它應用到其他領域物件中都不合適,那麼它可能是乙個領域服務

有些領域服務會以manager結尾,如loginmanager

服務操作是無狀態的,即一定的輸入就會有一定的輸出

一般的領域服務基類宣告如下

loginmanagerbase

where tuser:user, trole:role

這樣做的好處是可以方便對登入這個領域服務進行擴充套件

關於應用服務和領域服務

應用服務職責:

1.處理輸入輸出

2.呼叫領域層(不組織領域邏輯)

3.呼叫基礎設施層

領域服務職責:

1.組織領域邏輯

問:怎樣是組織領域邏輯

答:一些領域動作要一起呼叫才能完成這次請求,如

不是組織

if

(a!=

null)if

(b!=

null

)

是組織(所以if裡的邏輯應該在領域層)

if

(a!=

null

)

VO DTO與領域模型的概念

業務物件模型 也叫領域模型 domain model 是描述業務用例實現的物件模型。它是對業務角色和業務實體之間應該如何聯絡和協作以執行業務的一種抽象。業務物件模型從業務角色內部的觀點定義了業務用例。該模型為產生預期效果確定了業務人員以及他們處理和使用的物件 業務類和物件 之間應該具有的靜態和動態關...

springmvc分層領域模型概念詳解

目錄 本文核心為分層領域模型 vo,po,bo,dao,pojo等 概念的個人理解。1 解決mvc架構中各層 比如檢視層 控制層 服務層 資料訪問層 資料庫 中各層資料互動時,傳遞什麼資料模型更加科學和合理。2 更好的降低mvc架構中各層間的耦合性,提高層內的內聚性,這樣更方便對軟體進行維護 3 一...

領域模型 貧血模型 充血模型概念總結

領域模型 領域模型是對領域內的概念類或現實世界中物件的視覺化表示。又稱概念模型 領域物件模型 分析物件模型。它專注於分析問題領域本身,發掘重要的業務領域概念,並建立業務領域概念之間的關係。業務物件模型 也叫領域模型 domain model 是描述業務用例實現的物件模型。它是對業務角色和業務實體之間...