五年前,那时候php还很火,社区充满了php的文章……几乎每月都有新框架的产生并宣称吊打一切,而后每月都有框架在倒闭……php
忽然有一天就变天了,php已经不是世界上最好的语言,如今py和golang就火起来了……前端
社区内成天讨论前端的轮子,react、vue、angular……也是那个状态,几乎每一个产生的新轮子都在宣称吊打一切,而后……而后倒闭了呗2333vue
与此同时,mvvm也被讨论着,炒做着……react
我我的写过了mvc和mvvm的网站,以为其实直白看待两种模式其实很简单。golang
直白的讲,就是字面意思,一个是model+view+controller,一个是model+view+viewmodel数据库
纯字面意思,这有啥可探讨的嘛……后端
这些个字面意思都在干啥事儿,model操做数据库,view控制视图,controller负责业务逻辑,或者……mvc
model操做数据库,viewmodel操做要在view渲染的数据(接口),view负责渲染……框架
就是就是这么直白……有啥不懂的嘛……mvvm
mvc的优势就是view层很轻薄,也很传统,前端几乎只须要页面重构,后端工做量大一点……
并且无比简单,不要考虑接口啥的,甚至php搭个环境就完事儿了……
mvc的缺点就是,控制器过重了,负责了几乎所有的业务逻辑,并且这么重的状况下,几乎没法复用,不太符合工程化思想……
而后前端干的活太少了,没办法加薪和装逼了……
mvvm的优势就是,业务逻辑能够由前端负责了,能够拆分组件了,也能够装逼加薪了,彷佛看上去更符合主流的组件化,工程化思想了……
mvvm的缺点……就是工程化带来的繁琐,好比咱们作一个有pc端,移动端,和后台端的全栈网站,加上后端和数据库,须要同时开五个接口!五个控制台!
若是一我的来写……就比较悲剧了……公司还分工配合着::>_<::一我的就该绝望了……
以上……就是优缺点,也很直白,真的其实没啥可说的……原谅个人凑字数::>_<::
其实两种都是比较成熟的模式,直白的说,当你一我的全栈,写个我的博客啥的,mvc无疑是很省事儿的(前提是你的后端基础还行),效率满满的√
可是若是在公司,你做为一个前端人员(好比我),是很指望mvvm的,先不说加薪装逼,就只当成甩锅,就很方便……
反正只要拿到接口就能够随心所欲了不是吗(⊙o⊙)…
以上……说的挺直白的,你们不要在乎,之后不要再有mvvm优越,鄙视mvc的状况啦……事实上这俩东西就是个字面意思,一秒钟就能转换……