Model view controller 理解MVC模式

Model view controller 理解MVC模式,model-view-controller,Model View Controller,最近,我的同事问我MVC模式中的模型/控制器/视图之间的关系是什么。但不幸的是,我认为我没有给他一个很好的解释。所以我在谷歌上搜索。发现大多数图表如下所示 事实上,我不确定我是否理解其中的一些部分。请帮忙复习一下 控制器负责更新模型。(控制器->模型) 模型可以在视图更改时将更改应用于视图。如果视图中更改了模型的绑定值,则视图可以将更改应用于模型。(ModelView) 视图可以接受用户操作,以便将所有UI输入汇总到控制器。(视图->控制器) 控制器将根据用户操作确定可以显示的视图。(控制器-

最近,我的同事问我MVC模式中的模型/控制器/视图之间的关系是什么。但不幸的是,我认为我没有给他一个很好的解释。所以我在谷歌上搜索。发现大多数图表如下所示

事实上,我不确定我是否理解其中的一些部分。请帮忙复习一下

  • 控制器负责更新模型。(控制器->模型)
  • 模型可以在视图更改时将更改应用于视图。如果视图中更改了模型的绑定值,则视图可以将更改应用于模型。(ModelView)
  • 视图可以接受用户操作,以便将所有UI输入汇总到控制器。(视图->控制器)
  • 控制器将根据用户操作确定可以显示的视图。(控制器->视图)

  • 谢谢。

    在经典MVC中,视图不会更改模型。该视图向控制器提供用户输入,从而更改模型。模型通知视图发生了更改。它要么随通知一起提供数据,要么视图直接从模型请求新数据。可能是@joews的副本谢谢,明白了。因此,图表显示从视图到模型的箭头只是“GetChanged状态”。不要直接改变模型。对吗?还可以看到MVC已经衍生到其他模式,如和,主要是为了“解决”视图和模型之间有问题的交互。如果您有兴趣在JavaScript中看到此模式的一些“参考”实现,您可以浏览非常丰富的网站。oops。MVP和MVVM对我来说是新术语。我需要潜入水中。但是,是的。TodoMVC确实是一个展示这些MVC框架之间差异的好项目。