MVC框架(二)----前端与后端MVC、MVVM等设计模式区别与联系

  上篇文章中提到了前端的框架分类,其中前端JS框架中有些是MVC设计模式,但是Java和dotNET平台也有自己的MVC也有自己的设计模式,这两类有什么区别呢,好多猿们甚是不解,旁征博引后自己总结了一些,写了下自己的感受。


        java和dotNET框架都是在后台的,如ssh中的struct、springMVC,和ASP.MVC,说具体点还好理解;那么时下流行的前端框架AngularJS,VUE,js好多也号称MVC框架,这些都是前端的。

他们两类直接的关系是神似但形不似,强扯下关系就是如图关系,后端MVC中的view是前端MCV的全部:

MVC框架(二)----前端与后端MVC、MVVM等设计模式区别与联系_第1张图片

        一般来说,前端MVC大部分都是MVVM(MVC的强类型转换高级版),包括angularJS(当然后端中也有MVVM的,比如WPF)。

        后来盗用大神一张图片,跟我讲的逻辑基本一致,不过还比较直观:

MVC框架(二)----前端与后端MVC、MVVM等设计模式区别与联系_第2张图片


        view就是HTML;model就是js写的class,一般是以服务器端返回的JSON为主;viewmodel就是view的数据展现形式,里面有各种属性和方法可以与view进行绑定;binder就是各种MVC框架,在绑定后,你根据它们的规范实现的viewmodel就可以与view自动的进行互动,例如viewmodel里的属性的值发生变化的时候view上绑定对应属性的html也会自动更新。

你可能感兴趣的:(MVC,前端,mvc,javascript)