我想弄清楚基於MVC設計的系統的類,方法,文件和文件夾的正確佈局。基於MVC的系統通用文件/文件夾結構
假設我們有一個頁面。 頁面是一個帶標題,文本和子菜單的簡單頁面。它還可以包括一個畫廊(這將成爲數據庫和代碼中的獨立對象)。
我想有一個
PageDAO
類,將有所有數據庫相關的功能(這將延長主機DAO
類,這將持有通用數據庫的功能選擇,保存,刪除等)我會單獨的頁面類將爲此對象定義變量和非數據庫相關功能
我將擁有MVC本身,其中
PageModel
將構建頁面DAO
類和頁面類和構建內容,然後將進行在控制器中準備一個視圖畫廊將被定義在一個單獨的類之外的MVC(讓說libs文件夾),它永遠不會被用作視圖(我的意思是,我永遠不會調用畫廊頁面本身)。頁面模型將創建圖庫類和控制器將它放在頁面視圖
菜單類/功能將是更通用的功能(因爲它將適用於頁面和類別,如果代碼用於例如購物網站)也可以在一個單獨的區域中定義(可能再次是libs文件夾)。基於在功能菜單設置將在模型被稱爲
上述手段我將具有以下結構
模型,視圖,控制器的文件和文件夾的基於標準的MVC方法
dao lib全部文件夾
DAO
類類文件夾的lib文件夾,如
Page
,Menu
,Gallery
它看起來公平嗎?我只是急於不要將代碼分散到太多的類中,因爲它意味着更多的「包含」和更多的對象調用。但也許這是要走的路?到目前爲止,我還沒有使用多少MVC方法,並保持文件相當緊湊。想更多地瞭解最佳實踐
我沒有看到您的方法的一般問題。不過,我會建議專注於您的方法的OO分解結構。 – SteAp 2012-07-22 13:50:07