Hierarchical Model View Controller

From CSSEMediaWiki
Revision as of 05:51, 18 October 2010 by Nelson Shaw (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Hierarchical Model View Controller (HMVC) is an extension on the traditional Model view controller (MVC) architecture. It's main purpose is for use in web applications. The HMVC came about as a solution to scalability problems present in applications which used MVC. The solution was to convert the standard MVC into a hierarchy of parent child MVC layers.

Each MVC subgroup (triad) is independent from one another, but can communicate via their controllers. This allows for the software to be distributed over multiple locations.

HMVC Structure

Advantages of HMVC

  • Modularization - Reduction of dependencies between the disparate parts of the application.
  • Organization - Having a folder for each of the relevant triads makes for a lighter work load.
  • Re-usability - By nature of the design it is easy to reuse nearly every piece of code.
  • Extendibility - Makes the application more extensible without sacrificing ease of maintenance.

Implementation

Will add after dinner! User: Nelson Shaw

See also

Personal tools