2010-10-21 24 views
1

我可以做些什麼來構建我的應用程序,以便隨着代碼變大,代碼保持可管理狀態?我正在構建一個應用程序,該應用程序將處於某種狀態,這將根據用戶與它的交互方式而發生變化,並且應用程序可能會有許多不同的狀態。我試過尋找教程/資源,但是我找到只覆蓋一個應用程序與幾種模式,而我的將有很多不同的行爲。什麼樣的OOP結構在具有多種不同模式的應用程序中工作良好?

例如,您可以單擊對象類型A或B,因此每個對象可以有不同的行爲。如果您按住鼠標並嘗試拖動鼠標,它們的表現也會有所不同。但是如果你不把鼠標放下,這意味着它不是一個阻力。它知道什麼樣的模式進入X事件發生時,當你處於Y狀態,讓我感到困惑,因爲我不想擁有一個處理所有事情的大規模switch語句。

回答

2

目前尚不清楚「不同模式」的含義。

很多人花費大量時間來完成代碼的抽象結構,行爲和組織模式。這些概念的另一個術語是design patterns。除了乾淨地格式化和記錄您的代碼,這些概念可以幫助您保持代碼在邏輯上和功能上的清潔和可操作性

他們是衆所周知的主流,因爲他們已被證明可以在許多實現工作;你不會在每個項目中都使用它們,但是如果你想擴展你可能會開始使用它們的組合/變體。我的建議是熟悉這些,然後反思一下特定模式在你的應用程序/狀態機中的運行狀況。

編輯:對您編輯的迴應。

對於GUI開發,原則上,您希望實現表示代碼,行爲代碼和狀態代碼的分離。爲此,一些模式自然適用,例如模型 - 視圖 - 控制器(MVC)模式。

+0

我編輯了我的問題。 – JustcallmeDrago 2010-10-21 03:18:22

+1

「我正在構建一個應用程序,該應用程序將根據用戶與它的交互方式而發生變化,並且應用程序可能會有許多不同的狀態。」 - 幾乎每一個應用程序都是如此。一個明顯的例外是在沒有任何監督或維護的情況下在水下運行的應用程序,沒有任何交互,並且由希望和夢想驅動。 – Alex 2010-10-21 03:21:46

+0

重新編輯。是的,我知道,對於提出一些我應該能夠找到的問題,我感到不好,但我只是沒有找到它!如果有關於構建大型應用程序的好資源,請將我指向他們! – JustcallmeDrago 2010-10-21 03:24:32

相關問題