貧血和充血模型的比較之我見->有興趣的朋友進來參與討論

zuly發表於2007-04-05
今天在jdon看到一片關於領域模型的文章,心裡總結了一下


下面是個人觀點!

貧血模型是對OO的非常經典的詮釋!資料交給s/g,業務全部交給業務物件來完成。耦合度很低,邏輯清晰,重構空間大!而且在業務邏輯上事務控制的關注點也小!但是也很明顯,業務物件做的事情實在太多了,在領域物件上這個叫做超職責。s/g和業務物件分工雖然明確但工作量截然不同, 也就是說這個物件的職責過於複雜,在一定程度上背離了細力度的oo模型原則。


充血模型我個人認為是可取的!


1:把一部分有針對性的簡單邏輯交給s/g去完成,把業務物件向輕量級轉換,但是這裡就存在了一個設計上的問題!業務並不是完全由業務物件去完成,2者之間的職責就不明確了,同時事務的控制範圍也要擴充套件到s/g這一層上來,整個系統的模組之間就沒有明確界限,理解上來存在門檻問題!但是就設計上來說,這是一種進步!只是團隊開發的今天,充血模型在推行上存在障礙!



[該貼被zuly於2007年04月05日 10:36修改過]

相關文章