2008-11-06 145 views
0

林建設在C#一個Windows應用程序,我有以下問題設計:設計問題

我有以下對象結構:父 - >兒童系列 - >子 - >孫集 - >孫子。

用例要求我分階段使用父對象。例如。創建一個新的父實例。填充父項並保存。在稍後的階段,我會取回父母並填充孩子並保存。在最後階段,我會再次獲取父母併爲特定子對象填充孫子並保存。

這是一個不好的對象模型嗎?如果是這樣,那麼如何將這個龐大的對象模型分割成更小的模型呢?

謝謝

回答

2

我認爲這個問題只有在我們知道問題的領域時才能回答。設計(主要)是正確的還是錯誤的,取決於它如何適應這種情況。

+0

我同意Andrew的觀點,如果對象模型貼近現實世界的問題,那麼你就走在了正確的軌道上。我想補充說的是,有時候這會給你一個不便於編程的對象模型。在這些情況下,設計模式是你的朋友 - 你可以使用模式從不同的角度展示模型,通過用例特定的façades簡化對模型的訪問,並通過延遲加載對其進行優化。你也可以決定犧牲一些模型到現實世界的映射,作爲最後的手段讓開發更容易(完美是好的敵人)。 – RobD 2012-08-07 10:02:00