我的问题是关于设计模式,为什么大多数Web应用程序目前采用模型 - 视图 - 控制器设计模式与其他设计模式相比?
感谢。
答案 0 :(得分:3)
MVC模式自然适用于Web框架提供的核心:
并将这些问题分开,而不是交织在一起。通常很容易混合这些概念(例如JSP / ASP页面中的SQL调用),这会导致维护问题。 MVC有助于防止这种情况并将一些结构放入整个Web应用程序中。
当然,其他设计模式仍然可以在Web应用程序中使用,但MVC非常适合Web Framework的“后端数据服务”方案。
编辑: 正如RibaldEddie指出的那样:MVC不仅仅是这些问题的分离,而是框架如何让它们干净地进行交互。当然,MVC模式还有更多,这不是对模式的详尽解释。
答案 1 :(得分:2)
它只是取自OOP GUI软件开发的旧一代范例。
这是一个为网络选择的名称,因为在网络不是软件开发的焦点的那一天,MVC就是你如何分离你的顾虑(或者更准确地说,包装了各种各样的东西)。
由于人们在网络早期就已经出现了将问题分开的真正问题,他们使用桌面应用程序编程中的这个名称来说服Web开发人员有更好的方法。
不幸的是,在我看来,我们已经失去了一些让MVC在网络上如此强大的东西。有很多程序员只有网络经验和MVC概念。我想如果你看一些较旧的桌面库,你可能会发现一种新的方式来看待MVC的旧概念。希望这能让您了解在构建Web时真正令人讨厌的问题在哪里。
答案 2 :(得分:0)
好吧,几乎所有语言都支持它 - 它是一个众所周知,易于识别且易于理解的设计模式,适合大多数Web应用程序的范例。在某些情况下,它可能被过度使用 - 但通常它是Web应用程序的一个很好的选择 - 它通常只是美化的CRUD(创建/读取/更新/删除)数据库前端。