MVC和MVP以及MVVM区别

先看这三个东西是啥,然后我们做出总结就可以了.

我们互联网最开始,是没有所谓的前后端之说的,从Web1.0开始,无非就是通过哟jsp,.net,asp,php

等等编写的

到了web2.0的时候,开始有了所谓ajax局部无刷新请求

刚开始是没有框架这个概念的,且Mvc最早出现也是在后端出现的.

至于Mvp是MVc的进化版本可以认为,后期又引入了一个叫做Presenter

Presenter代表中间人,负责数据的交互,直到后期的MVVM,实际上就是Presenter的升级版本

不过人家MVVM确实解决了很多开发问题,同时解决了维护两者映射关系的大量繁杂代码和DOM操作代码,提升了开发效率,可读性,保持了优越性能表现.

这就是以上的区别,如果还有继续研究,那就从MVC下手

MVC为啥叫做MVC呢?其实这个跟后端也是有关系的,不多叙述.

  • Model:负责保存应用数据,与后端数据进行同步
  • Controller: 负责业务逻辑,根据用户行为对Model数据进行修改
  • View: 负责试图展示,将model中的数据可视化出来

分为这三个模块,看意思好像时挺复杂的,大白话就是这三个会形成一种三角关系,比如C=>M=>V

但是这种在实际开发中是不可行的.因为举个例子吧,任何一个小的事件都会按照这种事件,进行执行,就会显得非常不灵活.

然后就弄到了我们所谓的MVP也就是我们的升级版本,用中间人的形式,它负责View和Model之间的数据流动,防止view和model之间直接交流。

这里说一下,view和model是不可以直接进行通信的.

后来就有了MVVM

MVVM可以分解成(Model-View-ViewModel). ViewModel可以理解为presenter基础上的进阶版

viewmodel通过实现一套数据响应式机制自动想要Model中数据变化;

viewmodel会实现一套更新策略自动将数据变化转换为视图更新;

通过事件监听响应view中用户交互修改model中数据。

这样在ViewModel中间减少了大量DOM操作代码。

MVVM在保持View和Model松耦合的同时,还减少了维护它们关系的代码,使用户专注于业务逻辑,兼顾开发效率和可维护性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小鱼程序员

你的鼓励将是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值