2012-04-25 112 views
6

我打算用Winform創建應用程序,我想使用MVP模式。如何使用MVP模式在Winforms中構建項目?

因爲我以前從未使用MVP模式,所以我不確定如何構建新項目。

我應該如何在ASP.NET MVC中使用相同的約定,例如在模型,演示者和視圖中爲項目創建單獨的文件夾,然後可能使用Presenter類的命名約定,以便它們的名稱以單詞「Presenter」結束MVC中控制器的名稱以「Controller」結尾)

或者我應該爲Presenter和Model創建單獨的項目?

+0

這將取決於很多因素......使用您認爲有用的約定。名字總是可以在後期重構。 – Patrick 2012-04-25 18:14:29

+2

您不一定需要爲模型和演示者創建單獨的項目,但強烈建議使用它。命名約定只是*約定*,這意味着它不直接影響事物的工作方式,但它是非常有用的。一些框架(例如ASP.NET MVC或rails)將根據其遵循的約定以某種方式運行,但是沒有任何東西阻止您定義自己的約定(並對其進行編碼)。 這是關於[MVP] [1]的一個很好的閱讀[1] [1]:http://msdn.microsoft.com/en-us/magazine/cc188690.aspx – MilkyWayJoe 2012-04-25 18:26:37

回答

2

老實說,這是一個非常主觀的問題。我今天這樣做的方式可能不是我爲下一個應用程序執行此操作的方式。它對我來說很簡單。而且,對我而言有效的方式可能不是其他任何人都會這樣做的方式 - 不是我的錯誤,更好或更糟。

命名約定將幫助:

  • PersonPresenter
  • PersonViewModel(如果數據讀/寫數據存儲)
  • PersonView
  • IPersonView

而且,我已經分居我目前的解決方案分爲3個項目:

  • 應用程序本身 - 該項目中唯一的類是Program.cs
  • 演示模型:演示者,視圖界面,​​視圖模型(如果適用);全部由各自的觀點
  • 瀏覽文件夾組織:一個項目只是意見

現在,我需要進行單元測試參考解決方案的唯一的一塊是PresentationModels項目。