2009-12-16 21 views
1

我們正在開發基於DDD的系統。對於該系統中的特定模塊(發佈者),我們將從其他對象接收數據並對其進行轉換,然後寫出數據文件。域驅動設計 - 以大型DDD系統爲中心的數據中心模塊

正在開發的DDD設計有許多用於數據的自定義集合類...所有這些對象都只包含數據行,但它們具有不同的類和屬性名稱。處理這種情況有沒有好的策略或模式?即一種將相同的邏輯應用於所有這些對象的方法。

更多詳細信息:例如,我們可能有一個DataType123類,其中包含Data123Row對象的集合。然後是一個包含Data456Row對象集合的類型Data456類。假設有15個不同的對象。由於DDD的想法,他們有基於域的名稱,但它們實際上都是或多或少的表格數據,即行和列。我們正在嘗試創建一個通用服務,儘管它們在技術上是不同的類,但它們可以一視同仁。

回答

1

在猜測,它看起來像服務(DDD)和適配器(GoF)模式將是一個很好的起點。

由於數據轉換不是一個域爲中心的活動,通過服務給他們打電話(這反過來使用適配器來轉換數據)

0

你的問題有點不清楚。 DDD全都是關於存儲庫模式來堅持你的價值對象。你是否在尋找其他模式來處理特別的事情?目前還不清楚你想在這裏完成什麼。

1

這聽起來像你對我需要一個數據類型基礎類和您的轉換算法使用的DataRow基類。

然後使用Factory模式來構建您的對象。

如果您使用的是C#,則可以使用反射以通用方式訪問所有屬性。

或者如果您的轉換算法需要訪問特定的屬性名稱,那麼您的Factory可以處理DataType123,DataRow123和TransformationAlgorithm123的構造。