基于阮一峰对MVC,MVP,MVVM的图示自己的理解

本文介绍了MVC、MVP和MVVM三种软件设计模式,详细解析了各部分职责和通信方式。在MVC中,View、Controller和Model通过单向通信交互;MVP模式中,Presenter作为中间者实现双向通信,View变得被动;而在MVVM模式下,双向绑定使得View和ViewModel同步变化,常见于Angular和Ember等框架。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

阮一峰大佬对架构的解释还是很到位的

一、MVC

  • 视图(View):
  • 用户界面 控制器(Controller):业务逻辑
  • 模型(Model):数据保存

各部分之间通信方式

  1. View传送指令到Controller
  2. Controller完成业务逻辑后,要求Model改变状态
  3. Model将新的数据发送到View,用户得到反馈

所有通信都是单向的

二、互动模式

MVC通过两种方式接收用户指令

  • 通过View接收指令,传递给Controller
    在这里插入图片描述
  • 直接通过controller接受指令
    在这里插入图片描述

三、实例

实际项目往往采用更灵活的方式,这里举例的是Backbone,没怎么见过,不赘述,有兴趣了解的点最下方原文

四、MVP

MVP模式将Controller改名为Presenter,同时改变了通信方向
在这里插入图片描述

  1. 各部分之前通信是双向的
  2. View和Model不发生联系,都通过P
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值