Web 上的 MVC 模式与桌面上的 MVC 模式有什么区别?

发布于 2024-09-26 12:37:43 字数 514 浏览 5 评论 0原文

在阅读了一些模型视图控制器模式之后,似乎该模式在 Web 框架与桌面框架中的实现方式有很大不同。使用基于 Web 的 MVC 框架,视图和模型永远不会直接通信。他们只能与控制器通信。但在桌面实现中,视图和模型似乎可以直接通信,这对我来说没有意义。这似乎违背了 MVC 拥有独立、干净、隔离层的目的。另外,如果视图和模型直接通信,控制器会做什么?

这是来自 Wikipedia 的图表,说明了 MVC 。

替代文字

模型-视图-控制器

After doing some reading on the Model View Controller pattern it seems that the pattern is implemented quite differently in web frameworks vs desktop frameworks. With web based MVC frameworks the view and model never communicate directly. They can only communicate with the controller. But in desktop implementations, it seems that the view and model can communicate directly which doesn't make sense to me. That would seem to defeat the purpose of MVC of having separate, clean, isolated layers. Plus, what does the controller do if the view and model communicate directly?

Here is a diagram from Wikipedia illustrating MVC.

alt text

Model-View-Controller

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

清风无影 2024-10-03 12:37:44

我发现这篇文章似乎最能解释这个问题。 http://andrzejonsoftware.blogspot.com/2011/09/rails -is-not-mvc.html

看来确实有两种同名的架构:MVC 和 Model2。

I found this article that seems to best explain the issue. http://andrzejonsoftware.blogspot.com/2011/09/rails-is-not-mvc.html

It appears that there are really two architectures going by the same name: MVC and Model2.

何以畏孤独 2024-10-03 12:37:43

有趣的是,我最近在博客上写了一篇关于 MVC 概念在 Web 框架中的不同实现的文章。

您可以在此处阅读。

It's a funny thing that I wrote recently an article on my blog about the different implementation of the MVC concept in web frameworks.

You can read it here.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文