2015-04-02 54 views
1

我想在遊戲中使用MVC和狀態模式,但我不知道如何鏈接兩種模式。我認爲狀態(狀態模式)是MVC模式的一種視圖,但當應用程序改變狀態時,它是如何知道控制器和模型必須使用的?我想到了Facade Pattern,但是..我認爲這不是最好的主意。狀態模式與遊戲開發中的MVC

關於它的最佳實踐是什麼?

回答

0

你完全對MVC和狀態模式感到困惑。

  • 模型:數據模型。這代表您的數據的狀態(不是您的 應用程序)
  • 查看:就像它說的那樣。您看到的視圖
  • 控制器:業務邏輯控制器。這是應用業務邏輯的應用狀態表示

所有的計算機程序都是有限狀態機。所以,「國家」模式適用於一切。

state pattern的背景下,這是關於非常特定和封閉的狀態轉換。例如,你可以考慮TCP states

一般來說,你的問題不是特定於設計模式,狀態機或MVC。它過於寬泛

+1

感謝您的回答。 我不會混淆MVC和狀態模式。我瞭解兩者,但我不知道他們如何一起工作。 如果我在MVC模式下開發遊戲,並且想要更改狀態(例如,菜單和地圖),我想我需要在運行時更改View。那麼,如果用戶選擇一個菜單項,菜單控制器將在應用上下文中設置一個新的狀態來改變視圖,但是,怎樣才能知道在運行時哪個控制器屬於該視圖? – 2015-04-03 23:30:08