Hierarchical model–view–controller
![]() | This article needs attention from an expert in Computer science. Please add a reason or a talk parameter to this template to explain the issue with the article.(March 2012) |

Hierarchical model–view–controller (HMVC) is a software architectural pattern, a variation of Model–view–controller (MVC) similar to Presentation-abstraction-control (PAC), that was published in 2000 in an article[1] in JavaWorld Magazine, the authors apparently unaware[2] of PAC which was published 13 years earlier. The main difference between HMVC and PAC is that HMVC is less strict in that it allows the view and model of each agent to communicate directly, thus bypassing the controller.
The controller has some oversight. The controller selects the model and then selects the view, so there is an approval mechanism by the controller. The model prevents the view from accessing the data source directly.
See also
References
- ^ Jason Cai, Ranjit Kapila, and Gaurav Pal (2000). "HMVC: The layered pattern for developing strong client tiers". JavaWorld. Retrieved 2006-05-25.
{{cite journal}}
: Unknown parameter|month=
ignored (help)CS1 maint: multiple names: authors list (link) - ^ "TP" (2000). "Is HMVC PAC? (letter to the editor)". JavaWorld. Archived from the original on 2005-02-05. Retrieved 2006-05-25.
[Category:Software analysis patterns]]