MVC和三层架构的基本区别是什么?
发布于 2012-12-17 16:16:32
3层是一种架构风格的,MVC是一种设计模式。
在这一点上是不同的。
但是我们可以在三层架构风格中使用mvc模式。
所以:
表示层:来自MVC模式的“控制器和视图”。
业务层:来自MVC模式的“模型(数据)”。
数据访问层:原始数据访问层。
发布于 2011-01-02 16:08:03
在较大的应用程序中,MVC只是N层体系结构的表示层。模型、视图和控制器只关心表示,并利用中间层用来自数据层的数据填充模型。
MVC还可以用作整个3层体系结构,其中视图是您的表示,控制器是您的业务逻辑,模型是您的数据层(通常由DAL生成,如实体框架)。
理想情况下,你想让你的控制器变得又瘦又哑,把逻辑传递给一个“业务组件”,这实际上就是你的中间层。
发布于 2013-01-07 15:50:11
在3层架构中,层之间的通信是双向的。在MVC中,通信是单向的;我们可以说,每个“层”都是由左边的一个层更新的,反过来,更新右边的那个层,“-where”和" right“只是说明性的。
3层架构通常作为3个独立的进程部署在3个独立的网络节点上。但MVC被设计为在单个网络节点中作为单个进程进行部署。(就像桌面应用程序一样)
三层结构中的业务层通常包含实现业务代理、业务外观、业务对象、服务定位器、数据传输对象等著名模式的不同层次,而MVC本身就是一种设计模式,用于表示层。
三层架构的目标是将业务逻辑与客户端和数据库分离,从而提供多客户端协议、高可伸缩性、异构数据访问等。而MVC的主要目标是在一个部分的实现改变不需要改变另一个部分。
https://stackoverflow.com/questions/4577587
复制相似问题