V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
yafoo
V2EX  ›  程序员

现在 MVC 架构过时了吗?

  •  1
     
  •   yafoo ·
    yafoo · Jan 19, 2020 via Android · 11286 views
    This topic created in 2294 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
        1
    ByteRan  
       Jan 19, 2020
    架构这种东西 更萝卜青菜一样
    没有谁比谁更好
    haishiwuyuehao
        2
    haishiwuyuehao  
       Jan 19, 2020
    有比 mvc 更好的架构吗?看业务看场景
    mvc 过时了吗?如果说不适应市场就是“过时”。那么 mvc 绝不过时
    加油,!
    hitsmaxft
        3
    hitsmaxft  
       Jan 19, 2020
    MVC 适合静态页面的时代, 如果输出只有 JSON, 要 view 干嘛?
    lhx2008
        4
    lhx2008  
       Jan 19, 2020
    前后端分离就没 view 了,mvc 说的就是视图和控制器分离
    yafoo
        5
    yafoo  
    OP
       Jan 19, 2020 via Android
    @hitsmaxft
    @lhx2008 那就是 mc 架构,mvc 同样能胜任,应该还能流行很久吧
    charlie21
        6
    charlie21  
       Jan 19, 2020   ❤️ 2
    西红柿炒鸡蛋过时了么?
    yafoo
        7
    yafoo  
    OP
       Jan 19, 2020 via Android
    另外,前后端分离是主流,可现在又开始流行 ssr,服务器端渲染,感觉把前后端又糅合到一块了,这样真的好吗?
    fox0001
        8
    fox0001  
       Jan 19, 2020
    主要看谁去维护吧。中小项目没必要学人家前后端分离吧。
    LittleYangYang
        9
    LittleYangYang  
       Jan 19, 2020
    @yafoo #7 好像不做 ssr 的话,AJAX 获取的数据搜索引擎爬虫爬不到
    zhuangzhuang1988
        10
    zhuangzhuang1988  
       Jan 20, 2020
    没.
    ericgui
        11
    ericgui  
       Jan 20, 2020
    前后端分离的话,后端就剩下 MC 了,
    V 就交给 vuejs,reactjs 等

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

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