我的理解是,面向對象設計的基本用戶是應該專注於將類建模爲代碼和數據的聯合。然而,在日常開發中,我傾向於將我所有的業務邏輯分解爲他們自己的類。 '數據'最終被嚴格控制在POCOs/DTO中,基本上沒有真正的代碼或邏輯。然後,我實例化一個業務邏輯類,並在每次想要發生操作時將POCO傳遞給每個方法。業務邏輯加數據,還是將兩者分開?
但是,這感覺就像是兩個獨立的方法。事實上,後一種方法似乎與OO的目的不一致!
我認爲我一直保持了兩件事情分開,因爲業務邏輯可以在多個波蘇斯功能。另外,不強加於在波蘇斯數據驗證,它更容易單元測試,因爲它似乎更簡單的準備POCO的測試(無需擔心內部類狀態,封裝等)。現在我正在回顧這些原因,他們看起來很虛弱。
我在尋找這兩種方法的比較/對比度。具體來說,爲什麼看起來要製造'愚蠢'的POCO是最近走向何方?爲什麼不把數據和業務邏輯集中到一個類中呢?我們是否放棄了面向對象設計的原始目標?
謝謝!
引用福勒在這裏是超級有用的,因爲它給了我一些方向來更多地研究這個話題。另外,很高興看到這並不總是系統設計的方式。 – Brett