The DoYouHaoBaby PHP Framework中文开发文档手册
Copyright(c) DoYouHaoBaby.NET All Rights Reserved.
[ 系统特性 ]
描述:

DoYouHaoBaby系统采用MVC模式建构,这使得程序结构清晰,易于管理。

MVC 模式最大的作用就是分离逻辑和表现。一个业务逻辑在模型中实现,而处理结果在视图中呈现。控制器则充当中间人,根据用户请求调用模型,然后把处理结果传递给视图。

这种分离有许多好处:

  1. 清晰的将应用程序分隔为独立的部分;
  2. 业务逻辑代码能够很方便的在多处重复使用;
  3. 方便开发人员分工协作;
  4. 可以方便开发人员对应用程序各个部分的代码进行测试。

DoYouHaoBaby 应用程序中,MVC 模式的调用流程如下图:

 

控制器的角色

控制器在 DoYouHaoBaby  应用中,充当“调度”的角色。所有来自用户(通常是浏览器)的请求在 DoYouHaoBaby 进行解析后,都交给控制器处理。

但是,控制器并不完成具体的业务。控制器仅仅是将用户输入的数据提交给模型,然后调用模型的业务方法来实际完成业务。

控制器调用模型获得处理结果后,将结果存入视图。视图则将结果转换为 HTML 代码,并由 DoYouHaoBaby 返回给浏览器。浏览器解析获得的 HTML 代码,最终将处理结果显示给用户。

图“MVC 模式的调用流程”描述了 DoYouHaoBaby 中 MVC 模式的大概工作流程。流程中可以看出控制器充当的角色,以及需要完成的任务。从某种意义上说,控制器是应用程序暴露给外部的接口。应用程序外部的用户,只有通过访问控制器才能够使用应用程序,而不是直接访问到应用程序的模型等内在部分。

MVC 模式完整流程图

要深入了解 DoYouHaoBaby MVC 模式的完整工作流程,请参考下图:

这个图看上去很复杂,但是从流程而言,可以简单的理解为如下的过程:

  1. 响应客户端请求
  2. 将请求分配给控制器执行
  3. 根据控制器的返回结果渲染视图或输出