4.1 MVC 模式
MVC(Model-View-Controller)是企业应用里最深入人心的架构模式。它把一个应用拆成三层,用关注点分离避免“数据、界面、逻辑”搅成一团:
- 模型(Model):数据与业务规则。它不知道界面长什么样。
- 视图(View):展示与渲染。它只负责把模型“画出来”,不含业务逻辑。
- 控制器(Controller):接收用户输入,协调模型与视图。
下面的实验让你点击按钮,观察一次请求如何依次点亮“控制器 → 模型 → 视图”这条单向数据流。
正在加载交互实验...
为什么要分这三层
把它们揉在一起的代价,你大概体会过:一个既查数据库、又拼 HTML、又处理点击的“巨型函数”,改一处就牵一发动全身。MVC 的好处是:
- 可独立替换:同一个模型可以配多个视图(网页、移动端、API)。
- 可独立测试:业务规则在模型里,不依赖界面就能测。
- 可并行开发:前端做视图,后端做模型,控制器约定接口。
下面的职责板让你给一组职责选出正确归属的层——这能帮你建立“什么该放哪”的直觉。
正在加载交互实验...
正在加载概念检查...
正在加载概念检查...
变体与现实
MVC 有许多演化形态,核心思想一脉相承:
- MVP(Presenter):视图更被动,逻辑集中在 Presenter,便于测试。
- MVVM(ViewModel):通过数据绑定让视图自动同步 ViewModel,前端框架(Vue、WPF)常用。
- 后端 MVC:Spring MVC、Django、Rails 把请求路由到控制器,控制器调模型、选模板。
无论叫什么,判断标准始终是:业务规则有没有泄漏进视图?界面细节有没有渗进模型? 守住这条边界,就守住了 MVC 的价值。
正在加载本节练习...