mvc是现代面向对象程序设计方式的一种典范,具体流程执行如下图: Controller:控制器,负责调用模型和视图,及接收到的数据的处理 View:视图,只负责将Controller传递过来的页面显示到页面上 Model:操作数据库的模型,通过具体的sql执行对数据库具体操作,并且返回数据给contorller 三个模块各司其职,不能有一点越界操作,否则就不符合mvc规范了!
途中的标号表示执行的过程, 1,视图向控制器发送请求并携带所需参数 2,控制器接收到请求后,接收参数,并进行初步的处理,涉及到数据库就调用模型对象里面的方法处理 3,模型里面对应的方法来执行对数据库具体的操作,然后将得到的数据或者操作后的结果返回控制器 4,控制器对模型返回的结果进行再次处理后,返回到视图上显示,形成具体动态页面 分工明确是mvc的最大优点,因为一旦出了问题,能够立刻找到问题的出处,这也就是加强了程序的可维护性. 正式因为分工明确所有当三个部分里面不同的部分发生变化时,只需要修改相应的部分,比如说需要将使用的数据库从mysql改为oracle的时候,修改是比较容易实现的,只需要在模型类里面做一些修改就可以全局实现了!
官方阐述的优点: A,耦合性低 B,重用性高 C,声明周期成本低 D,部署块 E,可维护性高 F,利于软件工程化管理 缺点: A,不适合非常小型项目 B,降低了程序的运行效率 C,增加了系统的复杂性 |