MVC 架构

什么是MVC?

MVC是软件工程中的一种软件架构模式,它把软件系统分为以下三个基本部分:

M: model 模型

V: view 视图

C: controller 控制器


为什么要分成MVC?

它们三者独立分工,又能互相协作。这种分工明确,责任清晰的分工合作方式,便于各个部分的高效运作。比如修改某个某块的已有功能或新增功能,却不会影响其它模块;也有利于复杂程序的搭建。这大大提高的工作效率。


MVC 3者是如何分工合作的?

controller-负责信息沟通,是model和view的桥梁

它就像指挥官、或者协调者,通过向view和model发出行动指令,来开展工作。这种指令,在编程中起了另一个名字,被叫做action。action是一个大家庭,它下面由很多的成员,其中最重要的必备成员有7位,分别是 index, show, new, edit, create, update, destroy。

view-负责显示数据,即将资料输出到屏幕上

它就像是前台的表演者,听从controller的指挥,在舞台上把结果展现给大家。它通常是接受controller action这个大家庭里index, show, new, edit的指挥调度。

model-负责数据访问、存放读取资料

它就像编剧,编制与应用程序的业务逻辑相关的数据、以及对数据的处理方法。它有权力直接对数据库进行访问,进行数据的写入或读取。它会处理controller的要求,重点是create, update, destroy的指挥,并进而和数据库沟通,并将处理结果回传或反馈给controller。

它们三者的互动关系

model和view之间,不会直接进行沟通。view单向接受controller的指令。model和controller是双向互动关系。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 MVC是软件工程中的一种软件架构模式,它把软件系统分为三个基本的部分:模型Model、视图View以及控制器...
    sindri的小巢阅读 14,860评论 20 60
  • MVC是我们常用的架构设计模式把类按照功能划分为Model(数据模型)、View(视图)、Controller(控...
    追梦赤子心Year阅读 2,196评论 1 3
  • 今天我给大家介绍一个 Android 架构,原文请戳这里。 前言 MVC 架构想来大家都比较熟悉,M 指 Mode...
    KenChoi阅读 2,871评论 0 13
  • 一、MVC架构:MVC就是Model-View-Controller: 它们之间的关系如下图所示:View传送指令...
    SimpleLife_9f4a阅读 484评论 0 1
  • MVC模式是软件工程中一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(...
    McMc_5516阅读 353评论 0 0