MVC vs MVP vs MVVM
⚠️ 资料来源于互联网整理,仅作备考参考,正式结论请以官方教程与考纲为准。发现错误欢迎反馈问题。
🔒 本篇为会员内容。开通会员 →(全站会员内容畅读 · 附件下载 · 专享答疑)
一句话判据
表现层中,Controller/Presenter/ViewModel 的主要职责差异在于是否直接处理视图与模型的通信,以及是否支持双向绑定。
对照表
| 维度 | MVC | MVP | MVVM |
|---|---|---|---|
| 中介者 | Controller | Presenter | ViewModel |
| View 与 Model 关系 | 单向绑定 | 完全隔离 | 双向绑定 |
| 测试性 | 中等 | 高(View 接口可 mock) | 高 |
| 典型场景 | Web 后台(Spring MVC) | Android 早期、桌面应用 | WPF / Vue / Angular / Android Jetpack |