用于Web应用程序开发的MVC vs HMVC

| 我正在使用MVC模式进行Web开发。我使用codeIgniter框架。我发现http://fuelphp.com/和http://kohanaframework.org/,它们正在使用HMVC。仍然不清楚HMVC,为什么我们应该使用HMVC而不是MVC?阅读HMVC模式后我很困惑,它与MVC并没有太大区别。您能否解释为什么我们应该使用HMVC进行Web应用程序开发?     
已邀请:
  分层模型视图控制器(HMVC)模式是直接的   MVC模式的扩展,可以解决许多   已经提到的可伸缩性问题。 HMVC首先在   博客文章HMVC:强势发展的分层模式   2000年7月,在JavaWorld网站上建立了客户层。   文章重点介绍了将HMVC与图形用户一起使用的好处   接口。有人建议作者   实际上重新解释了另一种模式   1987年描述的Presentation-Abstraction-Control(PAC)。本文   JavaWorld中的VC提供了有关HMVC如何帮助以下方面的详细说明   具有GUI的桌面应用程序的设计。重点   文章旨在演示如何使用HMVC创建可扩展的Web   应用程序。      HMVC是传统MVC三合一的集合   应用。每个三合会都是完全独立的,可以执行   没有其他任何存在。所有对三合会的要求都必须   使用控制器界面,从不加载模型或库   在自己的域之外。三合会内部的物理位置   托管环境并不重要,只要可以从   系统的所有其他部分。 HMVC的独特功能   鼓励重用现有代码,简化对不同代码的测试   系统的各个部分,并确保应用程序易于使用   增强或扩展。 通过使用HMVC扩展Web应用程序 通过萨姆·德·弗雷西涅特     
HMVC可以做MVC可以做的所有事情 在MVC中您将要或曾经遇到的一件事是您无法从另一个控制器调用一个控制器(除非您使用自定义库或帮助程序来执行此操作) 在HMVC(分层模型视图控制器)中,您可以做到这一点,我将在这里总结所有品质: 在其他项目中重用您的代码 简化项目维护 扩展您的项目 组织代码 模块化结构 您将永远不会再尝试HMVC后再回到MVC 这是一张更清晰的图片 for CodeIgniter使用\“模块化扩展-HMVC \” 模块化扩展使CodeIgniter PHP框架模块化。模块是一组独立的组件, 通常将模型,控制器和视图放置在应用程序模块的子目录中,该目录可放入其他CodeIgniter应用程序中。 模块控制器可用作常规控制器或HMVC控制器,并且可用作控件来帮助您构建视图局部。 如果要在HMVC模式下使用codeigniter,则可以在此处使用Modular Extensions-HMVC https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc 这是一些不错且有趣的视频教程,它们将使您在codeigniter中使用HMCV https://www.youtube.com/watch?v=8fy8E_C5_qQ&list=PLBEpR3pmwCawDZ6FgNYoyvicEz4HrJPec&index=1 希望有帮助!     

要回复问题请先登录注册