asp、net、mvc,、mvvm有什么本质区别吗?

网友解答: 谢谢邀请。MVC与MVVM是设计模式,它们与具体平台技术无关。本质上是一家,但后者层次更清晰,分工更明显。MVC定义MVC全名是Model View Controller,是

网友解答:

谢谢邀请。

MVC与MVVM是设计模式,它们与具体平台技术无关。本质上是一家,但后者层次更清晰,分工更明显。MVC定义

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写;

MVC最开始是存在于桌面程序中的, 现在WEB项目中也有 MVC,M是指业务模型,V是指用户界面,C则是控制器;

使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式;

MVVM定义

MVVM是Model-View-ViewModel的简写。

它本质上就是MVC 的改进版。

MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开

关于MVC的应用范围

ASP.NET MVC是MVC模式ASP.NET上的实现;

JS也有MVC框架;Java世界里也有MVC;PHP也有MVC框架与设计理念;关于MVVM的应用范围

实现MVVM的前端有knockout.js, angularjs等

实现后台有Prism, MVVM-Light, MVVM-Sidekick等。

MVC和MVVM最直观的区别

MVC的model是单向的

mvc输出给view就完事了mvc controller不知道view上的改变而MVVM的model在view上改变,后台也会知道。关于Asp.NET MVC 与 WebAPI + MVVM

目前MVC的model应用中ViewModel应用较多,主要用作传输数据。

Asp.net Mvc非常适合应用 ViewModel, 前端主要通过Razor来呈现,前后端逻辑分离;WebApi + MVVM 非常适用于单页面应用(SPA),前后端代码分离,分工明显。

希望对你有所帮助,谢谢。

(结束)

标签: