能简单解释一下MVC吗?越简单越好

最近打算学习PHP框架,才发现我以前对MVC的认识很肤浅。但是看Laravel的文档,对MVC又是云里雾里的

阅读 15k
评论
    17 个回答
    • 17.1k

    比如说写一个 Todo List, 按照前端的 MVC 这样写:

    • Model: 一个 JSON 数组, 对应存在数据库的内容, 就是文本啊, 完成状态
    • View: HTML 模版, 或者 DOM 模版, 也就是界面
    • Controller: 用户在界面上操作, 进而对 Model 进行更改的操作

    一般有这样的关系(不是很准确, 而且各种 MVC 实现也不完全一致):

    • 整个程序围绕 Model 的改变来更新
    • View 根据 Model 渲染, 随着 Model 更新而更新
    • Controller 接收 View 当中的事件触发, 对 Model 进行修改

    整体上是一个循环~ 从 Model 开始, 中间加上用户操作, 又作用回到 Model
    这是写图形的一个思路, 就是把数据跟界面区分开来, 简化程序.
    或者说, 抽象出表示一个界面最少的数据作为 Model, 最少的操作作为 Controller.
    而 View, 跟着 Model 变, 甚至根据用户需要随意进行改变.

    大致上:

    或者:

      相似问题
      推荐文章