Learn Joomla Programming by Joomla expert at Indore Course Summary Introduction to Joomla Why and where we used Joomla Installation of Joomla and explain Joomla directory structure Introduction to Admin and Front end of Joomla Introduction to Architecture of...
HMVC – Hierarchical Model-View-Controller
Layered MVC — HMVC
The HMVC pattern decomposes the client tier into a hierarchy of parent-child MVC layers. The repetitive application of this pattern allows for a structured client-tier architecture,
The layered MVC approach assembles a fairly complex client tier. Some of the key benefits of using HMVC reveal the benefits of object orientation. An optimally layered architecture:
– Reduces dependencies between disparate parts of the program
– Encourages reuse of code, components, and modules
– Increases extensibility while easing maintainability
There are three key aspects of client-tier development:
– GUI layout code: Widget layout and screen look and feel
– GUI feature code: Validations and user-event capture
– Application logic code: App flows, navigation, and server interaction
The HMVC design pattern encourages the decomposition of the client tier into developed, distinct layers for implementing GUI and application services.
A pattern-based architecture results in standardization; the HMVC pattern standardizes the presentation (user-service) layer of Web applications. Standardization in the presentation layer helps contribute to:
– UI consistency: The framework divides a visual entity (view) into panes with specific, consistent responsibilities and functionalities.
– Standardized interaction: The interaction between the various subcomponents within the presentation layer is clearly defined, providing customizable base classes.
– Maintainable code: Using a pattern results in maintainable code that provides a flexible and extensible code base for developing applications.
-Application flow support: The framework structures the presentation service into distinct layers and provides for inter- and intralayer communication. Such a structure offers a strong, orderly way to implement application logic and flow.