hmvc

生活百科 2023-01-25 16:55生活百科www.aizhengw.cn

hmvc

HMVC模式即Hierarchical-Model-View-Controller模式,也可以叫做Layered MVC,HMVC模式把客户端应用程式分解为有层次的父子关係的MVC。反覆套用这个模式,形成结构化的客户端架构。

基本介绍

  • 外文名HMVC
  • 工作原理总控室
  • 学科电子工程

简介

HMVCHierarchical-Model-View-Controller),也可以叫做 LayeredMVC。顾名思义,就是按等级划分的 MVC 模式,简单的解释就是把MVC又细分成了多个子 MVC,每个模组就分成一个 MVC。
使用 HMVC 的好处就是可以降低各个功能模组之间的耦合性,提高代码复用性,使得每个功能都可以独立出来,每个模组都有自己的 MVC 结构,这就有点像ActiveX控制项,每个控制项都有自己的行为,控制项之间互不影响。

模式简介

一个MVC模组由应用程式的一个模组抽象而成。其中很重要的一个概念就是Parent MVC,它可以对应界面上的实体,也可以是一个抽象的对象。构想有一个Windows Form应用程式,有一个框架(frame),此框架由选单功能模组、导航栏、状态栏、主工作区等部分组成,对应于HMVC,frame MVC 即Layer1 的parent MVC ;选单MVC、导航栏MVC、状态栏MVC、主工作区 MVC处于第二层(图中只画了一个)。如果你觉得导航栏或主工作区的功能太複杂,也可以再细分成HMVC中的第三层,依次类推,可以扩展到n层,如果你愿意的话。

工作原理

Controller是功能模组的总控室,它负责和子Controller或父Controller通信,并通知它的View处理改变界面显示、Model处理一些业务逻辑或资料库访问操作。举个例子,假如要实现点击选单项,刷新主工作区这样的功能。点击操作在选单MVC的View里完成,选单Controller捕获这个事件,发现是需要刷新主工作区,它处理不了,于是传给它的父Controller—Frame Controller处理,Frame Controller捕获这个事件,直接把它交给主工作区 Controller处理,主工作区 Controller捕获这个事件,让主工作区 View处理刷新操作。是不是觉得很麻烦?对于小型应用程式,套用HMVC模式的优点显现不出来,一旦你的应用程式很複杂,HMVC模式的优点就清晰可见。
层次的HMVC解决了客户层程式的複杂性,HMVC揭示了面向对象的优势。

优点

把程式分成了几个部分,降低了依赖性。
支持鼓励重用代码,组件或者模组。
在今后的维护中,提高了可扩展性。

支持框架

支持HMVC的PHP框架
KohanaV3.0
Phalcon 需要自己扩展
Phalcon7

Copyright@2015-2025 www.aizhengw.cn 癌症网版板所有