0

這是關於MVC Web的應用程序架構的問題,以及如何可以擴展 處理組件化的功能比較複雜的單位。組件化,複雜的功能在MVC的Web應用程序

我有一個MVC風格的Web應用程序,面向客戶,面向信用卡收費頁面。

我被要求允許管理員輸入信用卡付款, 用於通過電話接收信用卡的次數。

面向網站的信用卡收費部分客戶目前 它自己的控制器,大約有3頁和登錄。該控制器 負責:

  • 客戶登錄證書認證
  • 信用卡數據收集
  • 調用庫做實際費用。
  • 向用戶報告結果。

我想將卡片數據收集頁面提取到 的某個組件中,以便我可以輕鬆地重新使用應用程序管理端的代碼。

現在我的部件僅限於單一的「視圖」頁面使用PHP風格 嵌入Perl代碼。

這是一個用Perl編寫的簡單的自定義MVC框架。現在,控制器 被直接從框架調用來爲Web請求提供服務。我的想法是讓 允許從其他控制器調用控制器,這樣我就可以組件化更復雜的功能 。

爲了簡單起見,我認爲我更喜歡構圖而不是繼承,儘管它會 需要編寫一堆傳遞方法(動作)。作爲Perl,我可以在 理論上做多重繼承。

我想知道是否有人與其他MVC Web框架的經驗可以發表評論,怎麼這樣的事情通常是做 。

謝謝。

回答

1

創建一個包裝所有cc特定功能的組件(類?),並通過適當的方法/函數公開它。

使用的組成來提供你的控制器,客戶和管理面臨的CC組件的一個實例,並有兩個調用適當的方法來達到需要採取什麼措施。

我已經處理過很多次相似的事情,我絕對更願意將我的「控制器」(或任何其他代碼直接依賴於第三方庫)保存爲「愚蠢」,並且像你說的那樣 - 通過任何需要特定於您的應用的功能的東西。這使我的代碼易於測試,這正是我現在設計大部分設計的原因。

我希望我們在談論同樣的事情,MVC可以在許多不同的層面來應用它有時會混淆。

+0

我認爲我們正在談論同樣的事情,雖然可能並不清楚我想在組件中包含HTML UI,這就是爲什麼我要用控制器(和他們的視圖)來講話,而不是僅僅回來結束工人課程。 – NXT 2010-06-07 02:06:53

相關問題