Model view controller 网站是MVC MVP还是MVVM?

Model view controller 网站是MVC MVP还是MVVM?,model-view-controller,mvvm,web,mvp,Model View Controller,Mvvm,Web,Mvp,我真的无法区分标题中提到的模式 动态网站的用户界面基本上是用HTML、CSS和javascript开发的(至少,这是用户看到的)。后端可以是连接到数据库的PHP或ASP(或其他) 我相信数据库就是模型,UI就是视图。后端是控制器、演示者还是viewmodel 我希望您能给出解释性的回答,如有必要,请提供链接。如果不访问源代码,您无法确定应用程序使用了哪种设计模式。我得到了明确的印象,这就是你所要求的 此外,您似乎对MVC和受MVC启发的设计模式的组成部分有些困惑: 模型不是数据库。它是应用程序

我真的无法区分标题中提到的模式

动态网站的用户界面基本上是用HTML、CSS和javascript开发的(至少,这是用户看到的)。后端可以是连接到数据库的PHP或ASP(或其他)

我相信数据库就是模型,UI就是视图。后端是控制器、演示者还是viewmodel


我希望您能给出解释性的回答,如有必要,请提供链接。

如果不访问源代码,您无法确定应用程序使用了哪种设计模式。我得到了明确的印象,这就是你所要求的

此外,您似乎对MVC和受MVC启发的设计模式的组成部分有些困惑:

  • 模型不是数据库。它是应用程序的一个层(不是类或对象),包含所有域业务逻辑,并与至少一个数据源(可能是或可能不是数据库)交互
  • UI由表示层维护,表示层主要由视图和类似控制器的结构组成

这篇微软msdn文章将MVVM描述为微软对Martin Fowler模式的定制。他的模式是MVP方法。他的模式是MVC方法。这需要了解这些模式的演变。并非所有语言和框架都能很好地支持GUI模式。例如,MVVM是微软为桌面编程而发明的。网页通常具有完整的页面刷新,而不是事件驱动的“桌面”编程模型。有争议的是,试图将桌面模式缩小为网页编程模式会使它们变形,无法识别


ZK是一个具有事件驱动编程模型的现代web框架。本文概述了使用上述三种Martin Fowler模式三次编写相同的简单屏幕。浏览器的所有内容都转换为html和javascript,但实际的应用程序屏幕代码运行在服务器端事件驱动的“桌面”上。本演示将讨论MVC/MVP/MVVM模式的视图、模型和第三部分

检查这些,因为它们几乎完全符合您的要求和相关要求:可能重复
,我相信数据库就是模型,UI就是视图。后端是控制器、演示者还是视图模型?
MVP是一种仅涉及UI层中元素的UI模式,将要显示的数据(模型)、UI行为逻辑(视图)和数据显示(演示者)分离开来。模型是特定视图的特定数据,但不是数据库,也不是域层的实体。演示者与域层和数据访问层通信,管理视图和模型之间的请求,但不是后端本身。视图只是渲染模型。