• 请不要在回答技术问题时复制粘贴 AI 生成的内容
yafoo
V2EX  ›  程序员

现在 MVC 架构过时了吗?

  •  1
     
  •   yafoo ·
    yafoo · Jan 19, 2020 via Android · 11963 views
    This topic created in 2489 days ago, the information mentioned may be changed or developed.
    本人技术不行,但是喜欢模仿,最近在开发一个 mvc 框架,但是周边人都说 mvc 过时,mvc 架构,你们怎么看?对一般的中小型网站,有比 mvc 更好的架构吗?
    Supplement 1  ·  Jan 20, 2020
    好像漏了最重要的信息,我想讨论的的这个 MVC 指的是后端的 MVC。

    在前端领域现在发展出领先的 MVVM 架构,我想问的是,在后端领域,对于中小型网站来说,现在有没有比 MVC 更先进的架构模式?前后端分离,后端输出 api,我觉得本质上 api 数据也是个 view,只不过是个简化的 view,没有样式而已。
    40 replies  •  2020-01-20 16:26:00 +08:00
    ByteRan
    ByteRan
    Jan 19, 2020
    1
    架构这种东西 更萝卜青菜一样
    没有谁比谁更好
    haishiwuyuehao
    haishiwuyuehao
    Jan 19, 2020
    2
    有比 mvc 更好的架构吗?看业务看场景
    mvc 过时了吗?如果说不适应市场就是“过时”。那么 mvc 绝不过时
    加油,!
    hitsmaxft
    hitsmaxft
    Jan 19, 2020
    3
    MVC 适合静态页面的时代, 如果输出只有 JSON, 要 view 干嘛?
    lhx2008
    lhx2008
    Jan 19, 2020
    4
    前后端分离就没 view 了,mvc 说的就是视图和控制器分离
    yafoo
    yafoo
    OP
    Jan 19, 2020 via Android
    5
    @hitsmaxft
    @lhx2008 那就是 mc 架构,mvc 同样能胜任,应该还能流行很久吧
    charlie21
    charlie21
    Jan 19, 2020❤️2
    6
    西红柿炒鸡蛋过时了么?
    yafoo
    yafoo
    OP
    Jan 19, 2020 via Android
    7
    另外,前后端分离是主流,可现在又开始流行 ssr,服务器端渲染,感觉把前后端又糅合到一块了,这样真的好吗?
    fox0001
    fox0001
    Jan 19, 2020
    8
    主要看谁去维护吧。中小项目没必要学人家前后端分离吧。
    LittleYangYang
    LittleYangYang
    Jan 19, 2020
    9
    @yafoo #7 好像不做 ssr 的话,AJAX 获取的数据搜索引擎爬虫爬不到
    zhuangzhuang1988
    zhuangzhuang1988
    Jan 20, 2020
    10
    没.
    ericgui
    ericgui
    Jan 20, 2020
    11
    前后端分离的话,后端就剩下 MC 了,
    V 就交给 vuejs,reactjs 等

    前端的话,没有一个公认的模式,反正各种奇葩模式都存在
    caowentao
    caowentao
    Jan 20, 2020 via iPhone
    12
    嵌入式裸机开发,做一些仪表,也在用 mvcs 程序框架。很好的解耦了操作逻辑和视图渲染。
    xuanbg
    xuanbg
    Jan 20, 2020
    13
    MVC 是一种前端的架构模式,不过现在前端流行 MVVM 模式而非 MVC。前后端分离以后,View 肯定是没有了,Model 也没了,Controller 倒是还在,但也仅仅是叫 Controller 而已。后端事实上已经没有什么 MVC 可言了。
    Mutoo
    Mutoo
    Jan 20, 2020
    14
    mvc 过时了,现在流行的是 facebook 提出的 flux 以及类 flux 的单向数据流模型。
    areless
    areless
    Jan 20, 2020 via Android
    15
    这种存在 40 多年的东西,跟流不流行~过不过时没关系了。早已是软件工程里最强健的方案之一了。
    CodeXx
    CodeXx
    Jan 20, 2020
    16
    @xuanbg Model 咋没了呢
    Kilerd
    Kilerd
    Jan 20, 2020
    17
    view 没有了,然后就变成了 viewObject
    krystal9527
    krystal9527
    Jan 20, 2020
    18
    C 语言过时了吗?
    yafoo
    yafoo
    OP
    Jan 20, 2020
    19
    @Mutoo 我去看看 flux
    BluesQu
    BluesQu
    Jan 20, 2020
    20
    抛开需求谈架构 都是耍流氓
    GrapeCityChina
    GrapeCityChina
    Jan 20, 2020
    21
    没有任何一个技术是过时的,就好像现在还有很多人在使用 VB 一样
    keepeye
    keepeye
    Jan 20, 2020
    22
    没有过时,并不是所有项目都必须得用前后端分离的开发方式
    yafoo
    yafoo
    OP
    Jan 20, 2020
    23
    @BluesQu 需求就是中小型常规网站
    Huizhen
    Huizhen
    Jan 20, 2020
    24
    EveryBody “MVP”(最小可行性产品)关注下
    yafoo
    yafoo
    OP
    Jan 20, 2020
    25
    @Huizhen 谢谢,我去看看
    slwchs
    slwchs
    Jan 20, 2020
    26
    抛开场景谈架构(框架)都是耍流氓
    MaxTan
    MaxTan
    Jan 20, 2020
    27
    MVVM 也不是现在前端领域发展出来的什么领先架构,十几年前的 WPF 就已经在用了。 现在的 web 前端都是在 nodejs 的加持下重新造轮子。

    拿现在的大环境相比,mvc 那套确实有点显得过时,不过合适就好
    Smilencer
    Smilencer
    Jan 20, 2020❤️1
    28
    mvc 只是一种思想,前后端分离了,view 不还在吗,mvc 思想不还在吗
    hotsprings
    hotsprings
    Jan 20, 2020 via iPhone
    29
    @caowentao 能否介绍下,嵌入式逻辑下如何作用 mvc 架构呀,比较感兴趣
    wangyzj
    wangyzj
    Jan 20, 2020
    30
    一个名词而已
    再说没有所谓过时只说,只有哪种业务场景更适合什么架构
    caowentao
    caowentao
    Jan 20, 2020 via iPhone
    31
    @xuanbg 确实前后端分离架构,后端没有 mvc 可言,后端应该剩下服务集合和数据库管理等
    caowentao
    caowentao
    Jan 20, 2020 via iPhone
    32
    @CodeXx model 可以理解为数据库,应该还是在的
    caowentao
    caowentao
    Jan 20, 2020 via iPhone
    33
    @BluesQu 确实,没有最好的架构,只有最适合需求的架构。架构也是活的,需要根据需求的变化做演进
    caowentao
    caowentao
    Jan 20, 2020 via iPhone
    34
    @hotsprings 核心的思想就是把 view 视图中可变的内容,抽象成变量(model),业务逻辑 controller 操控变量,视图对变量做可视化渲染。
    https://i.loli.net/2020/01/20/S1bR6yogcNBiKTZ.jpg
    closedevice
    closedevice
    Jan 20, 2020
    35
    如果将 MVC 返回为分层的思想,那它将永不过时
    caowentao
    caowentao
    Jan 20, 2020 via iPhone
    36
    @caowentao 变量即数据模型 /数据库
    youngxhui
    youngxhui
    Jan 20, 2020
    37
    为什么非要把 view 狭义的理解为页面呢? json 也是视图啊
    wangxiaoaer
    wangxiaoaer
    Jan 20, 2020 via Android❤️1
    38
    @lhx2008 json xml 不是 view 吗
    huntcool001
    huntcool001
    Jan 20, 2020
    39
    为啥国内现在基本都前后端分离了,但是国外的好像很多还是全栈?
    GPLer
    GPLer
    Jan 20, 2020
    40
    @huntcool001 我感觉是因为国内公司以手机移动端 APP 为主,而且不欢迎搜索引擎抓取。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4027 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 80ms · UTC 05:45 · PVG 13:45 · LAX 21:45 · JFK 00:45
    ♥ Do have faith in what you're doing.