Model view controller 在web应用程序中,MVC与三层体系结构相比有哪些优势?

Model view controller 在web应用程序中,MVC与三层体系结构相比有哪些优势?,model-view-controller,web-applications,architecture,Model View Controller,Web Applications,Architecture,请注意,我指的是3层(逻辑层)而不是3层(物理层) 还有,别搞错了,我不迷恋设计模式。我是一名计算机科学专业的学生,他们问了我这个问题,所以我试图找到一个聪明的答案 谢谢你提前回答 它们不是相互竞争的理想,MVC传统上处理应用程序的表示层,即三层之一。MVC是关于关注点的分离,但处理视图与模型和控制器松散耦合的细节;对于3层,这不是明确要求的 是-您可以(也应该)让所有三层松散耦合,但这不是三层的明确要求;MVC就是这样 顺便说一句:MVC是一种关注特定问题的特定模式,我在将其称为“架构”时会小

请注意,我指的是3层(逻辑层)而不是3层(物理层)

还有,别搞错了,我不迷恋设计模式。我是一名计算机科学专业的学生,他们问了我这个问题,所以我试图找到一个聪明的答案


谢谢你提前回答

它们不是相互竞争的理想,MVC传统上处理应用程序的表示层,即三层之一。

MVC是关于关注点的分离,但处理视图与模型和控制器松散耦合的细节;对于3层,这不是明确要求的

是-您可以(也应该)让所有三层松散耦合,但这不是三层的明确要求;MVC就是这样

顺便说一句:MVC是一种关注特定问题的特定模式,我在将其称为“架构”时会小心


Microsofts ASP.NET MVC实现的一个优点是,它提供了各种集成点和灵活性,而使用“标准”是不容易访问的ASP.NET—我想你可以说,在MS空间中构建基于web的3-trie系统时,传统上使用ASP.NET。

这个问题的关键在于MVC是一种三层设计


模型是数据库,视图是用户体验,控制器是应用层。

您所说的这三层体系结构是什么?其中有三层-表示层、业务逻辑层和数据访问层。演示与业务层对话,业务层通过数据访问层与数据库对话。这里有一篇文章讨论了它们之间的区别,但其中的细微差别让我看不出它们之间的优势。不幸的是,许多人认为MVC本身并不是其中的一层,而是代表了传统3层体系结构的所有3层。