DDD讀書筆記(二)

今天有很多想法,雖然很多可能不成熟,也是學習的過程。

在瞭解了工廠和倉儲後,對於工廠和倉儲之間的關係產生了一些問題。

工廠僅作為新建和重建對象的地方,則可以將工廠和client隔離,這樣一來,需要新建和重建對象時,client需要通過倉儲向工廠發出請求,client無需關注他們如何工作,只是需要這個對象,就只會找倉儲要,倉儲讓工廠重裝。

而另外一種是client直接向工廠發出請求,工廠新建和重裝對象,client拿到對象再通過倉儲進行存取。可是對於關係數據庫,數據庫存儲的比較類似于各個對象的“零件”,客戶需要對象時,問工廠要,工廠去取的零件組裝對象,組裝好了直接給客戶?這樣子并不是我所期望的,客戶爲什麽要跟工廠打交道?工廠難道還必須管理這些零件?這些應該由倉儲來管理!

所以我更偏向于倉儲跟工廠“打交道”。工廠只能通過倉儲和工廠之間的“ 運輸車”聯繫。這裡倉儲的地位類似一個很大的傳輸中心,存取零部件和對象,更符合我心目中倉儲的含義。

另外關於“運輸車”--DTO,到底應該如何處理?使用放血模型?如何實踐?因為在運輸過程中,我們不關心對象的任何行為,對象放血更利於傳輸,那麼使用原有對象則顯得臃腫。雖然OO思想,這些行為並不消失,但如何能更好的讓其放血甚至扁平以更符合“運輸”這個單一目的?是否有這個必要? 

原文地址:https://www.cnblogs.com/sohobloo/p/2287411.html