【讨论】关于mvc与三层架构

浪漫幕末 2009-07-10 02:26:16
加精
最近在学习mvc设计模式,拿它和三层架构做了一些比较:
我认为mvc设计模式,关键在于构建model,model就是mvc模式的灵魂,他包含了三层架构里面的 “实体规范层”、“行为规则层”、“数据访问层”;控制器(Controller)用来收集view提供的用户数据,传递给model,同时返回model处理后的数据给view。model的设计可以参考三层架构的设计方法,将实体、行为规则(业务逻辑)和数据访问分开,在数据访问上可以应用orm框架。三层架构同样可以应用orm框架。个人认为三层架构和mvc都是很好的设计方法,目的都是降低系统的耦合性,提高重用率,提高系统的可维护性,可以根据喜好进行选择。

如何在三层架构和mvc之间进行取舍呢?或者说它们就和我所理解的一样,根据喜好选择,没有实质的优劣。
有理解不当之处,希望大家指出来,呵呵~欢迎大家进行讨论。

顺便BS一下改版,这页面不是一般的丑,美工该下岗了。
...全文
8499 142 打赏 收藏 转发到动态 举报
写回复
用AI写文章
142 条回复
切换为时间正序
请发表友善的回复…
发表回复
QinLeefirst 2012-08-22
  • 打赏
  • 举报
回复
三层和MVC很像
Yurisama 2012-07-14
  • 打赏
  • 举报
回复
给楼主点动力
hunya_2353 2011-09-01
  • 打赏
  • 举报
回复
我觉得MVC已经完全不同于传统的ASPX,最重要的一点体现在控制器,所有的URL访问都要通过控制器。你如果想用Redirect(),就行不通了,这点我觉得不是很方便。
yiyanhong 2011-08-10
  • 打赏
  • 举报
回复
可以共存的……MVC可能方便分工 ,不像三层层层依赖……MVC只是相互协作……
做牛作码 2011-07-27
  • 打赏
  • 举报
回复
[Quote=引用 20 楼 hechenqingtian 的回复:]

当然啊,你要明白三层架构的MVC的区别和联系:

三层架构是最基本的项目分层结果,而MVC则是三层架构的一个变体,MVC是一种好的开发模式。首先你要明白MVC分别代表的是什么意思.
M 即Model(模型层),主要负责出来业务逻辑以及数据库的交互
V 即View(视图层),主要用于显示数据和提交数据
C 即Controller(控制器),主要是用作捕获请求并控制请求转发

三层:U……
[/Quote]不错
peter_xizi 2011-07-27
  • 打赏
  • 举报
回复
还是没搞明白,觉得不一样,但说不出来
DGHGPG 2011-07-27
  • 打赏
  • 举报
回复
求高手多多赐教!
jk203mn 2011-07-06
  • 打赏
  • 举报
回复
混分来了
毛员外 2011-07-05
  • 打赏
  • 举报
回复
我比较喜欢简洁的勒,我进csdn就这样子了,就是讨厌两边的浮动广告
做牛作码 2011-06-11
  • 打赏
  • 举报
回复
学习受教了
bebetoo123 2011-06-10
  • 打赏
  • 举报
回复
最近再学习这个,在百度上搜居然搜到这页了,顺路过来
sbc86 2011-05-02
  • 打赏
  • 举报
回复
MVC还不是非常的熟悉,经常用的就是三层架构了。
没有弄清MVC到底有啥好处,用WEB开发不好么

http://www.zs760.net
mlzhaw 2011-04-30
  • 打赏
  • 举报
回复
顶起哈!
osnot 2011-04-09
  • 打赏
  • 举报
回复
先回个贴,小白飘过。。。
Damon_lan 2010-10-27
  • 打赏
  • 举报
回复
三层结构和MVC 不是同一个意思吗?
ltm1209 2010-10-27
  • 打赏
  • 举报
回复
页好长啊!!!!!!!!!!!!!!!!
sitong_xl 2010-10-05
  • 打赏
  • 举报
回复
顶一个!!!
liaoxdong 2010-09-27
  • 打赏
  • 举报
回复
[Quote=引用 31 楼 lya121 的回复:]
MVC设计模式…
三层架构…
他们细分之后得到的是:View(UI)、BIZ(BLL)、DAO(DAL)、Entity(Model)、Controller
MVC把 BIZ(BLL)、DAO(DAL)、Model(Entity) 统一称之为 模型(MODEL),得到:View、Controller、模型(MODEL)
三层 在我使用中 暂未体会到控制器的存在,完全是:UI、DAO、BLL
……
[/Quote]这个是正解
ilhjh 2010-09-17
  • 打赏
  • 举报
回复
个人 愚见:可以把MVC当做表现层来用 把他放到三层架构中一起使用
mettyzhyzk 2010-07-28
  • 打赏
  • 举报
回复
不懂 学习中 ,。。。。。
加载更多回复(122)

62,050

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧