PHP MVC 模式(1) - MVC 架构

PHP高级程序设计 学习笔记 2014.06.18

MVC (Model-View-Controller,模型-视图-控制器)是一种可以简化应用程序开发和维护的非常常用的设计模式。它从逻辑上把应用程序分隔为个部分。模型部分负责应用程序的业务逻辑,封装访问数据库的方法并提供一个可以重用的类库。视图部分控制了数据的外观并提供从用户收集数据的机制。控制器部分,负责将所有的事项连接起来,负责从视图收集数据,并决定程序的执行逻辑。调用模型的机制并解析返回的数据,然后将数据提交给视图展示给客户。选择合适的框架要考虑五个关机因素:架构、文档、社区、支持和灵活性。

基于MVC的典型工作流

设计师根据现存的业务需求以及应用程序索要实现的功能,制作一个静态的、单独的原型设计。然后,交由开发人员评审。开发人员负责确保所有要求实现的功能军事可行的,如果开发人员没有发现任何问题,他们就会创建一个开发计划,其中包括API模型,然后再交由集成人员(负责控制器层)。如果原型出现问题,项目会回到设计人员手中,继续循环前面的流程。

准备好原型可API模型后,集成工作就会开始。集成人员将研究原型设计,并将它转换成模板语言,并将设计集成到站点URL结构中。然后编写控制器,这一组件会将请求在WEB服务器和他们需要操纵的模型信息之间代理分发。结果产生之后,获取视图并输出,并且控制器会提供所有动态内容的值。

最后,API模型完全实现之后,就可以将应用程序交给测试人员了。如果模型开发人员严格遵守API编写代码,集成人员根据规范来编写控制器,那么测试工作将会顺利进行。

MVC 应用程序

应用程序入口,MVC站点通常会实现一个用来处理WEB站点上所以请求的核心脚本。这个文件被称为引导文件。引导文件负责初始化框架,其中包括类的自动加载,读取配置,解析URL到模型,填充封装了请求信息,初始化控制器程序等操作。

引导完成后,前端控制器将被实例化,并接管程序的运行。前端控制器类是负责解释请求变量的内置类,它把用户端请求路由到动作控制器上的某个方法,这个方法被叫做动作,动作负责实现所有的功能。这个方法中将实例化模型类,解析视图模板,并输出结果。

模型一般不遵循任何特定的结构,而是存在与一个公共的位置中,所有它们可能被框架自动加载。模型是提供了所需的数据操作和解析能力的工具类。

视图是模板,可以用任何模板语言来编写。视图的目的是不在视图中包含任何类型的处理逻辑或者数据操作,并且只输出由控制器提供的数据。模板语言(如:FastTemplate/Smarty)的选择取决于能否和目标框架集成在一起。

PHP MVC 模式(1) - MVC 架构

时间: 2024-10-21 01:08:41

PHP MVC 模式(1) - MVC 架构的相关文章

MVC模式与三层架构的区别

之前总是混淆MVC表现模式和三层架构模式,为此记录下. 三层架构和MVC是有明显区别的,MVC应该是展现模式(三个加起来以后才是三层架构中的UI层) 三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI).业务逻辑层(BLL).数据访问层(DAL).区分层次的目的即为了“高内聚,低耦合”的思想. 1.表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得.    2.业务逻辑层(BLL):针对具体问题的操作,也可

浅析MVC模式与三层架构的区别

三层架构和MVC是有明显区别的,MVC应该是展现模式(三个加起来以后才是三层架构中的UI层)三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI).业务逻辑层(BLL).数据访问层(DAL).区分层次的目的即为了“高内聚,低耦合”的思想.1.表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得.   2.业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理.   3.数据访问层

浅析MVC模式与三层架构的区别01

三层架构和MVC是有明显区别的,MVC应该是展现模式(三个加起来以后才是三层架构中的UI层)三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI).业务逻辑层(BLL).数据访问层(DAL).区分层次的目的即为了“高内聚,低耦合”的思想.1.表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得.   2.业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理.   3.数据访问层

为什么要使用MVC模式,MVC模式的优势有哪些?请写出你熟悉的MVC轻量级框架名称。

MVC就是常说的:模型(Model),视图(View)和控制Controller) 它把业务处理和Jsp页面分开了.而以前的Jsp页面是把所有的代码都写在Jsp页面中,那样不利于维护 MVC模式的目的就是实现Web系统的职能分工. MVC模式的好处: 1.各施其职,互不干涉 在MVC模式中,三个层各施其职,所以如果一旦哪一层的需求发生了变化,就只需要更改相应的层中的代码而不会影响到其它层中的代码. 2.有利于开发中的分工 在MVC模式中,由于按层把系统分开,那么就能更好的实现开发中的分工.网页设

java 三层架构与mvc模式的解释

三层架构是一种架构模式.分为: 持久层:完成内存数据和磁盘数据的转换,采用Dao模式,建立实体和数据库映射. 表--类 列--(数据库)属性 (ORM对象和关系的映射),主要目的是完成对象数据和关系数据转换 业务层:主要完成业务处理操作,采用事务脚本模式,将一个业务中所有的操作封装成一个方法,保证该方法中,所有的数据库操作,同时成功或者同时失败. 表现层:完成数据的展示和流程的控制,采用 MVC模式. 三层架构与MVC的关系: 表现层 ———–>mvc框架 业务层 ———–>service层

《从零开始学Swift》学习笔记(Day67)——Cocoa Touch设计模式及应用之MVC模式

原创文章,欢迎转载.转载请注明:关东升的博客 MVC(Model-View-Controller,模型-视图-控制器)模式是相当古老的设计模式之一,它最早出现在Smalltalk语言中.现在,很多计算机语言和架构都采用了MVC模式. MVC模式概述 MVC模式是一种复合设计模式,由"观察者"(Observer)模式."策略"(Strategy)模式和"合成"(Composite)模式等组成.MVC模式由3个部分组成,如图所示,这3个部分的作用如下

mvc模式改进网站结构

MVC模式(三层架构模式)(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Controller) <inm src="./images/1.gif" /> 第一个“.”代表从当前路径出发 使用mvc开发模式,完成雇员的增加,修改,删除,显示,查询 画出程序框架图,清晰思路设计文件个数(试图,模型,控制器) 一. 模型(Model)model 用来固化数据.封装与业务逻辑相

MVC 模式

随着Web应用的商业逻辑包含逐渐复杂的公式分析计算.决策支持等,使客户机越 来越不堪重负,因此将系统的商业分离出来.单独形成一部分,这样三层结构产生了. 其中‘层’是逻辑上的划分. 三层体系结构是将整个系统划分为如图2.1所示的结构[3]  (1)表现层(Presentation layer):包含表示代码.用户交互GUI.数据验证. 该层用于向客户端用户提供GUI交互,它允许用户在显示系统中输入和编辑数据,同时 系统提供数据验证功能. (2)业务逻辑层(Business layer):包含业务

《从零開始学Swift》学习笔记(Day67)——Cocoa Touch设计模式及应用之MVC模式

原创文章,欢迎转载.转载请注明:关东升的博客 MVC(Model-View-Controller,模型-视图-控制器)模式是相当古老的设计模式之中的一个,它最早出如今Smalltalk语言中. 如今,非常多计算机语言和架构都採用了MVC模式. MVC模式概述 MVC模式是一种复合设计模式,由 "观察者"(Observer)模式."策略"(Strategy)模式和"合成"(Composite)模式等组成.MVC模式由3个部分组成,如图所看到的,这3