2017-03-06 48 views
0

我一直在尋找一個月以獲得對此問題的可靠答案。在使用MVC設計模式的項目中,只有鬆散的「意見」並沒有確切的事實說明程序的控制流程是如何發生的。誰在MVC中處理程序「控制流」?

我見過雙方的意見,是的,控制器採用的模型和視圖不,沒有,控制器只負責處理輸入的完整性和調用數據操作模型的一切護理,如果你使用控制器來處理「控制流」,那麼你已經設計好了你的程序。

我想我在尋找經驗智慧在這裏。我沒有任何專業編程朋友可以問,我只是第一次學習MVC。所以你們多年的經驗對我來說非常有價值,因爲這種信息並不在我閱讀的文件/書籍中。

回答

0

MVC設計模式已明確定義的角色時,它描述了程序的結構內「的關注點分離」,但這些問題的落實和作用是不明確的,因此可以在許多不同的方式解釋。

因此,大多數人似乎設計自己的應用程序的方式是爲MVC控制器提供完整的「應用程序控制」,因爲它的名稱爲「控制器」,即使它被認爲是可憐的形式,有人這樣做。

0

也許從這裏開始你的研究(https://www.martinfowler.com/eaaCatalog/)?看看'Web Presentation Patterns'。 AFAIK,Fowler是第一個對這些模式進行編目/記錄的人,所以它似乎是一個很好的地方,可以獲得對模式的目標和原型實現的實現不可知的理解。

記住,以後每次執行模式(S)將有自己的「味道」和他們的解釋

熊。

+0

顯然,POEAA本書比網站更大量的細節。 –

+0

好的,我剛剛閱讀了本書的MVC部分,它只是說「應用程序控制器與MVC控制器不同,因爲它們是完全不同的動物」(釋義)。但是沒有進一步的闡述。它與我讀過的其他東西基本相同。這是作爲一個意見,沒有確切的事實說明爲什麼。但是,如果這是真的,那麼人們正在學習的代碼和示例的90%完全沒有用,因爲它們正在給予MVC控制器「應用程序控制」。 – user2470057

+0

在這裏回顧(https://martinfowler.com/eaaCatalog/applicationController.html),我沒有這本書,我認爲它們的區別有合理的闡述。我認爲當你可能引入這種模式時,也有一個可以接受的推理水平:'...隨着應用程序變得越來越複雜,這可能會導致重複的代碼,因爲不同屏幕上的多個控制器需要知道在特定情況下要做什麼。 ..'所以我想這可以歸結爲你的控制流程有多複雜,你管理的代碼量以及它引入的噪聲有多大。 –

相關問題