2011-11-17 64 views
2

我之前沒有檢查過,所以如果這是一個dup我道歉。分層架構設計中的組件分離

我正在開始作爲基於MVP模式的分層設計的WinForms應用程序。我創建了兩個將作爲我的表示層開始的裝配項目。

Company.Project.Presentation.Core - 該組件包含了意見的所有合同/接口和主持人

Company.Project.Presentation.WinForms - 該組件包含的意見和主持人的具體實現。

我認爲這樣做的主要原因是,如果我們決定轉移到WPF,那麼合同將在他們自己的獨立大會。

這似乎是個好主意嗎?或者我只是增加我的解決方案中的項目數時,一個具有子文件夾/名稱空間的程序集足夠好?

感謝提前任何輸入,

的Jeremie

回答

3

它通常是從你的UI分開你的業務邏輯和實現細節是個好主意。單獨的程序集是執行此操作的常用方法。此外,使程序集名稱與命名空間名稱匹配是一個好主意。

到目前爲止好:)

我會做比它只是把更多的合同,雖然。我會將所有核心業務邏輯放入其中,並儘可能將其與UI分離。

am我只是增加了我的解決方案中的項目數,當一個子文件夾/命名空間的程序集足夠好時?

如果您有多個程序重複使用該邏輯的潛力,您絕對應該將其保存在單獨的程序集中。通過控制檯應用程序(用於可腳本化)或Web應用程序公開邏輯是許多公司的常見重構。

在我非常擔心這些可能性之前,我會親自爲我的項目/公司確定這些事情的可能性。但是我仍然會將業務邏輯分開,因爲這會節省我以後的時間,因爲它總是降低維護工作的障礙(錯誤修復等)。

如果正確使用Visual Studio快捷方式,可以輕鬆瀏覽多個項目。 F12是一個很好的學習,因爲它會直接引導您實現光標所關注的代碼。