mvvm和mvc的区别

来源:全书馆 2.11W

品牌型号:联想拯救者Y9000P
系统:Windows11

mvvm和mvc的区别

mvvm和mVC的区别:

1、mvvm实现了view和Model的自动同步,当model的属性改变时,用户不用在手动操作dom元素来改变view的显示,它会自动变化。

2、MVVM并不是用VM完全取代了C,ViewModel存在目的在于抽离Controller中展示的业务逻辑,而不是替代Controller,其它视图操作业务等还是应该放在Controller中实现。

3、mvc和mvvm都是一种设计思想。主要就是mvc中Controller演变成mvvm中的viewModel。mvvm主要解决了mvc中大量DOM操作使页面渲染性能降低,加载速度变慢的问题。

MVVM是Model-View-ViewModel的简写。它本质上就是MVC的改进版。MVVM就是将其中的View的状态和行为抽象化,让我们将视图UI和业务逻辑分开。

经典MVC模式中,M是指模型,V是视图,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。其中,View的定义比较清晰,就是用户界面。

mvvm的优点:

1、低耦合。视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的"View"上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。

2、可重用性。你可以把一些视图逻辑放在一个ViewModel里面,让很多view重用这段视图逻辑。

3、独立开发。开发人员可以专注于业务逻辑和数据的开发(ViewModel),设计人员可以专注于页面设计,使用ExpressionBlend可以很容易设计界面并生成xaml代码。

4、可测试。界面素来是比较难于测试的,测试可以针对ViewModel来写。


热门标签