2011-03-28 81 views

回答

19

的分層模型 - 視圖 - 控制器(HMVC)模式是直接 擴展,設法解決許多已經提到的 可擴展性問題的MVC模式。在2000年7月的JavaWorld網站上,HMVC首先在 博客文章中標題爲HMVC: The layered pattern for developing strong client tiers中描述。大多數 文章集中於使用HMVC和圖形用戶界面的好處。已有some suggestion作者其中 實際上重新解釋1987年描述的另一種模式稱爲 演示 - 抽象控制(PAC)。JavaWorld中的文章 提供了HMVC如何可以幫助設計桌面應用程序的詳細說明與GUI。這篇 文章的重點是演示如何使用HMVC創建可伸縮的Web應用程序。

HMVC是作爲一個 應用程序運行的傳統MVC三元組的集合。每個三合會是完全獨立的,可以執行 而不存在任何其他。向黑社會發出的所有請求都必須使用控制器界面,不要在自己的域外加載模型或庫 。只要可以從系統的所有其他部分訪問 託管環境中的黑社會物理位置並不重要。 HMVC 的獨特功能鼓勵重複使用現有代碼,簡化系統不同部分的測試,並確保應用程序易於增強或擴展。

Scaling Web Applications with HMVC 由Sam去弗雷西

+0

我相信它感動了http://inviqa.com/blog/2010/02/22/scaling-web-applications-with-hmvc – Quamis 2016-04-04 12:11:29

+0

@Quamis謝謝,更新。 – alex 2016-04-04 12:31:29

23

HMVC可以做任何事情,MVC能夠和你會就是與MVC中掙扎的東西更

之一是,你不能調用從另一個控制器控制器(除非你使用了自定義庫或助手要做到這一點)

在HMVC(分層模型 - 視圖 - 控制器

),你可以做到這一點,我會總結所有的素質在這裏:

  • 重用代碼在其他項目
  • 簡化主泰寧項目
  • 規模項目
  • 組織代碼
  • 模塊化結構

你將永遠不會回去MVC試圖HMVC 這裏追求的是一個畫面更清晰

See picture

CodeIgniter使用「模塊化擴展 - HMVC」

模塊化擴展使CodeIgniter PHP框架模塊化。模塊是獨立組件的組,通常是模型,控制器和視圖,安排在應用程序模塊子目錄中,可以放入其他CodeIgniter應用程序中。

模塊控制器可以用作普通控制器或HMVC控制器,它們可以用作窗口小部件來幫助您構建視圖偏好。這裏HMVC

https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc

這裏有一些很好的和有趣的視頻教程,將讓你在軌道上與笨HMCV -

,如果你想與HMVC模式中使用笨,你可以使用模塊化擴展

https://www.youtube.com/watch?v=8fy8E_C5_qQ&list=PLBEpR3pmwCawDZ6FgNYoyvicEz4HrJPec&index=1

希望幫助!

+1

男人你解釋得很好(y) – 2017-01-09 18:48:50