V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
devwolf
V2EX  ›  JavaScript

MVU(Mode-View-Update)想请教一下各位对这种模式的了解

  •  
  •   devwolf · 2020-05-26 13:12:25 +08:00 · 3276 次点击
    这是一个创建于 1673 天前的主题,其中的信息可能已经有所发展或是发生改变。

    笔者此前误以为 angular 、vue 、react 三个都是 mvvm,今天在机缘巧合下被修正了一下,得知 react 并不是 mvvm,以及"react 是 MVU"这个陌生的说法————orz 笔者完全没听过 MVU 这种设计模式。
    (当然,也可以拓展讨论一番 vue 究竟是不是 mvvm,笔者很想拜读各位 v 友的见解)

    https://thomasbandt.com/model-view-update 这篇文章看的云里雾里,只 get 到个历史渊源
    "MVU 发现自己逐渐被不同的技术栈所采用,但它起源于功能编程语言 Elm 社区: Elm 体系结构是用于构建交互式程序(例如 Web 应用程序和游戏)的模式。这种架构似乎在榆树中自然而然地出现了。早期的 Elm 程序员不是在发明它,而是在他们的代码中发现了相同的基本模式。"

    https://github.com/dotnet-websharper/mvu 这篇笔者发觉至少两年前就已经有了 mvu 的说法,文档中的说明"似乎"也将 react 归类为“与其他 MVU 库”。笔者推测 2 年前 mvu 说法可能存在不少,疑惑
    "为何国内百度这类搜索引擎没有收录 Mode-View-Update 的相关文章"
    或者
    "为何鲜有人撰写"

    8 条回复    2020-05-26 14:58:00 +08:00
    Mutoo
        1
    Mutoo  
       2020-05-26 13:25:25 +08:00   ❤️ 1
    vue 是 reactive / two way binding
    react 是 flux/redux flow
    两者都跟 mvvm 不一样
    ✅️model
    ❎️mode
    chenluo0429
        2
    chenluo0429  
       2020-05-26 13:33:38 +08:00
    大概是并没有得到足够分量的权威背书的自造概念
    devwolf
        3
    devwolf  
    OP
       2020-05-26 13:40:41 +08:00
    @Mutoo 感谢(写太急了,没反应过来拼写失误)
    ChefIsAwesome
        4
    ChefIsAwesome  
       2020-05-26 13:47:23 +08:00 via Android   ❤️ 2
    elm 很早就有了,redux 就是借鉴的 elm 再加上 flux 。react 是单纯的 ui 框架,不在乎你怎么处理 model,不等于 redux,所以说 react 是 elm 的架构肯定是不对的。纠结 mvvm 还是 mvc 还是 mvp 、mvu 什么的没多大意义吧。
    另外感叹下风水轮流转。elm 是函数式编程语言,转成 js 。那时候 react 带起来的函数式编程风,这两年又给 typescript 带起来的面向对象给压下去了。再过两年指不定又起来了。
    maichael
        5
    maichael  
       2020-05-26 13:52:24 +08:00
    React 准确来说只有 view 。
    rioshikelong121
        6
    rioshikelong121  
       2020-05-26 14:13:31 +08:00
    没听过这个名词 估计是谁自己发明的。
    dhssingle
        7
    dhssingle  
       2020-05-26 14:16:35 +08:00   ❤️ 2
    Flutter, SwiftUI 都是 MVU,还有微软改名部新出的 MAUI 也是。
    hronro
        8
    hronro  
       2020-05-26 14:58:00 +08:00   ❤️ 1
    @ChefIsAwesome #4 TypeScript 怎么就带起来面向对象了?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3072 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 12:50 · PVG 20:50 · LAX 04:50 · JFK 07:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.