2013-03-30 147 views
2

我想在VS2010中開發一個MFC應用程序。我希望將GUI與邏輯分開,以便修改GUI變得更加容易。但我不知道如何設計類來實現這個功能。我應該使用哪種設計模式? MFC有什麼特殊的方法來處理這個問題嗎?如何在MFC中將GUI從邏輯中分離出來?

此外,我不熟悉設計模式。所以我希望有人能給我解釋這些的樣品或詳細文章。 (我也喜歡一個不太複雜的圖案!^^)

非常感謝您!

回答

4

MFC已經在其基於SDI/MDI的模板中提供了這種分離。例如,對於程序本身,您有一個CWinApp實例和一個CMainFrame。對於MDI應用程序中的每個文件,您都有一個CDocument和一個CView類。

注:

  • 的MFC不使用經典的MVC分離,他們結合視圖和控制器到一個單一的UI部分。
  • MFC對此並不嚴格,您還可以將按鈕處理程序放入應用程序/文檔中,而不僅僅放入框架/視圖中。
  • 您不完全將模型從MFC中分離出來,它仍然建立在該模型上。如果你想實現這種分離,你必須做額外的工作,但你有一個模塊,你可以完全分開測試。這允許您使用測試驅動的開發,這在嵌入到GUI中時更加困難。