直白面对mvc和mvvm……

五年前,那时候php还很火,社区充满了php的文章……几乎每个月都有新框架的产生并宣称吊打一切,然后每个月都有框架在倒闭……

突然有一天就变天了,php已经不是世界上最好的语言,现在py和golang就火起来了……

社区内整天讨论前端的轮子,react、vue、angular……也是那个状态,几乎每个产生的新轮子都在宣称吊打一切,然后……然后倒闭了呗2333

与此同时,mvvm也被讨论着,炒作着……

我个人写过了mvc和mvvm的网站,觉得其实直白看待两种模式其实很简单。

首先,mvc和mvvm是个啥?

直白的讲,就是字面意思,一个是model+view+controller,一个是model+view+viewmodel

纯字面意思,这有啥可探讨的嘛……

这些个字面意思都在干啥事儿,model操作数据库,view控制视图,controller负责业务逻辑,或者……

model操作数据库,viewmodel操作要在view渲染的数据(接口),view负责渲染……

就是就是这么直白……有啥不懂的嘛……

然后,各有什么优缺点?

mvc的优点就是view层很轻薄,也很传统,前端几乎只需要页面重构,后端工作量大一点……

而且无比简单,不要考虑接口啥的,甚至php搭个环境就完事儿了……

mvc的缺点就是,控制器太重了,负责了几乎全部的业务逻辑,而且这么重的情况下,几乎无法复用,不太符合工程化思想……

然后前端干的活太少了,没办法加薪和装逼了……

mvvm的优点就是,业务逻辑可以由前端负责了,可以拆分组件了,也可以装逼加薪了,似乎看上去更符合主流的组件化,工程化思想了……

mvvm的缺点……就是工程化带来的繁琐,比如我们做一个有pc端,移动端,和后台端的全栈网站,加上后端和数据库,需要同时开五个接口!五个控制台!

如果一个人来写……就比较悲剧了……公司还分工配合着::>_<::一个人就该绝望了……

以上……就是优缺点,也很直白,真的其实没啥可说的……原谅我的凑字数::>_<::

最后,如何正确对待这两种模式?

其实两种都是比较成熟的模式,直白的说,当你一个人全栈,写个个人博客啥的,mvc无疑是很省事儿的(前提是你的后端基础还行),效率满满的√

但是如果在公司,你作为一个前端人员(比如我),是很期望mvvm的,先不说加薪装逼,就只当成甩锅,就很方便……

反正只要拿到接口就可以为所欲为了不是吗(⊙o⊙)…

以上……说的挺直白的,大家不要在意,以后不要再有mvvm优越,鄙视mvc的情况啦……事实上这俩东西就是个字面意思,一秒钟就能转换……

看东西就是要直白的看本质√

时间: 2024-10-14 14:38:28

直白面对mvc和mvvm……的相关文章

Android App的设计架构:MVC,MVP,MVVM与架构经验谈

来源: Android App的设计架构:MVC,MVP,MVVM与架构经验谈 和MVC框架模式一样,Model模型处理数据代码不变在Android的App开发中,很多人经常会头疼于App的架构如何设计: 我的App需要应用这些设计架构吗? MVC,MVP等架构讲的是什么?区别是什么? 本文就来带你分析一下这几个架构的特性,优缺点,以及App架构设计中应该注意的问题. 1.架构设计的目的 通过设计使程序模块化,做到模块内部的高聚合和模块之间的低耦合.这样做的好处是使得程序在开发的过程中,开发人员

[转]MVVM架构~mvc,mvp,mvvm大话开篇

MVP 是从经典的模式MVC演变而来,它们的基本思想有相通的地方:Controller/Presenter负责逻辑的处理,Model提供数据,View负 责显示.作为一种新的模式,MVP与MVC有着一个重大的区别:在MVP中View并不直接使用Model,它们之间的通信是通过Presenter (MVC中的Controller)来进行的,所有的交互都发生在Presenter内部,而在MVC中View会从直接Model中读取数据而不是通过 Controller. 在MVC里,View是可以直接访问

关于iOS中MVC和MVVM的一些思考

事情从一般开发中一个massive viewController说起,一个巨大的vc一般少则上千行代码,多则上万行. 这中情况下对代码的维护有致命性的障碍,个人亲身体验. 当你试着从6000行的代码中去找到一个网络请求,找到相关的实现逻辑,这已经能够让你眼花缭乱的. 更进一步,如果你打算对某个逻辑,某个场景进行测试,那事情的困难程度非常大. 再者,如果你想重用某一部分的场景逻辑,那几乎不可能,因为所有的代码都耦合在一个vc中了. 为什么会造成一个vc的代码这么多,这么复杂呢? 一般有以下原因:

MVC, MVP, MVVM比较以及区别(上)

原文:MVC, MVP, MVVM比较以及区别(上) MVC, MVP和MVVM都是用来解决界面呈现和逻辑代码分离而出现的模式.以前只是对它们有部分的了解,没有深入的研究过,对于一些里面的概念和区别也是一知半解.现在一边查资料,并结合自己的理解,来谈一下对于这三种模式思想的理解,以及它们的区别.欢迎各位高手拍砖. 阅读目录: 一. MVC, MVP, MVVM诞生的需求? 二. 一段典型的耦合代码 三. MVC模式 3.1 主动MVC 3.2 被动MVC 3.3 Web应用中的MVC框架 3.4

前端mvc与mvvm

框架与库的最大区别就是代码的风格确认,库只是页面级别的选择,而架构则关注于整个程序的设计 MVC 作为软件中的99口诀,软件设计要是没个mvc就好像不是正规军一样,前端也是这样,将html理解为view,js理解为controller,js的通讯(主要指ajax)交互理解为model的获取,那么前端就是一个标准的mvc架构,其写法大致是这样的 html/view: <button class="btn btn-info" id='save'>提交</button>

浅析前端开发中的 MVC/MVP/MVVM 模式

MVC,MVP和MVVM都是常见的软件架构设计模式(Architectural Pattern),它通过分离关注点来改进代码的组织方式.不同于设计模式(Design Pattern),只是为了解决一类问题而总结出的抽象方法,一种架构模式往往使用了多种设计模式. 要了解MVC.MVP和MVVM,就要知道它们的相同点和不同点.不同部分是C(Controller).P(Presenter).VM(View-Model),而相同的部分则是MV(Model-View). Model&View 这里有一个可

MVC, MVP, MVVM比较以及区别

MVC, MVP和MVVM都是用来解决界面呈现和逻辑代码分离而出现的模式.以前只是对它们有部分的了解,没有深入的研究过,对于一些里面的概念和区别也是一知半解.现在一边查资料,并结合自己的理解,来谈一下对于这三种模式思想的理解,以及它们的区别.欢迎各位高手拍砖. 阅读目录: 一. MVC, MVP, MVVM诞生的需求? 二. 一段典型的耦合代码 三. MVC模式 3.1 主动MVC 3.2 被动MVC 3.3 Web应用中的MVC框架 3.4 MVC总结 一,MVC, MVP, MVVM诞生的需

[ExtJS学习笔记]第九节 Extjs5的mvc与mvvm框架结构简介

本文地址:http://blog.csdn.net/sushengmiyan/article/details/38537431 本文作者:sushengmiyan -------------------------------------------------------------资源链接----------------------------------------------------------------------- 翻译来源:http://docs.sencha.com/ext

MVC和MVVM详解

前言 让我们从MVC开始 你一直在使用MVC的思想只是你可能没有察觉到 MVC是如何进行工作的 看图说话 View和Controller的交互 Model和Controller的交互 一言不合上代码 MVVM 什么是MVVMwhat MVVM为什么会出现为什么要用MVVM解决一些问题why 如何实现MVVMhow 先来点理论性的准备工作 一言不合上代码20 后记 Controller的完整代码 ViewModel的完整代码 前言 请预留足够的时间,您将看到大量的文字描述.但是相信我,您绝对值得花