1. 程式人生 > 實用技巧 >ABP中名詞解釋及區別

ABP中名詞解釋及區別

  上一篇中出現了很多的名詞,比如值物件,DTO,聚合根等等,現在我就一一解釋並對他們進行區別

  首先理解一點,ABP是基於DDD領域驅動模型建立的,自然裡面也引進了一些其中的概念,上面的這些基本都是DDD裡的名詞

  聚合根:業務物件,比如書店專案中的Book,或者訂單系統的訂單Order

  值物件:表示值的一組物件,固定不變但是自身有一定邏輯,沒有ID,比如

public class Address{
  public string Province{get;set;}  
  public string City{get;set;}
  public string County{get
;set;} }

  Address可用作表示地址的值,但是顯然省市區有聯絡,不可以隨意賦值,也不能隨意修改

  值物件中的屬性,欄位也是值物件

  DTO:資料傳輸物件,只表示值,負責傳遞數值,沒有邏輯,沒有ID,只負責在展示層和應用層之間傳輸資料,繫結資料

  實體:有生命週期,有狀態,比如訂單下面的訂單物品OrderItem,可以改變,有ID區分