注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

樱之花

叶散的时候,你明白欢聚;花谢的时候,你明白青春.

 
 
 

日志

 
 
关于我

分类中“我的实验室”是我在日常工作中的一些知识总结,有些写的比较匆忙,可能大家在阅读时会产生困扰,后期有时间我会重新整理编辑,谢谢大家的到访,您们的支持是我前进的动力!

网易考拉推荐

.net mvc 和 三层架构的区别  

2011-09-21 11:31:40|  分类: .NET/C# |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

1.传统WebForm开发中存在的一些问题
传统的ASP.NET开发中,微软的开发团队为开发者设计了一个在可视化设计器中拖放控件,编写代码响应事件的快速开发环境。然而,它所带来的负面效应是:
由于控件封装了很多东西,开发者很难了解这背后的HTML是如何运作的
容易得到一个包含大量ViewState的页面,使得页面尺寸远远超过所需的内容,使得页面的打开速度较慢
不容易被测试
2.什么是MVC?
MVC(Model-View-Controller,模型-视图-控制器模式)是软件工程中的一种软件架构模式。它把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。
3.什么是ASP.NET MVC?
ASP.NET MVC是微软的开发团队基于MVC开发的一个易于被测试的框架。它具有以下特性:
没有数据回传
没有在页面中保存视图状态
开发者可以完全掌控页面的呈现过程
易于单元测试
易于测试驱动开发
可扩展、可替换
支持WebForm中的有关特性,如:用户控件、母版页、数据绑定、本地化等
不在基于文件目录结构,而是将URL映射到控制器中
4. 为什么使用ASP.NET MVC?
易于进行单元测试
易于进行测试驱动开发
避免了WebForm中大量的ViewState导致页面文件变得臃肿
5. MVC与三层架构?  
MVC是一种模式
ASP.NET MVC是一个基于MVC模式的开发框架
三层架构是一种架构
至于区别,可以严格的从概念上区分开来。
下图是MVC与三层架构的对应关系
.net mvc 和 三层架构的区别 - IDesire - 樱之花 yinzhihua2008
6. MVC与Webform如何抉择?
.net mvc 和 三层架构的区别 - IDesire - 樱之花 yinzhihua2008
7. 两种技术并存
ASP.NET MVC框架只是给开发者提供欧诺个了开发web应用程序的一种选择,并不是要取代Webform
这两种技术各有优缺点,开发者需要根据实际情况,选择对应的技术
有时候,可以在同一个项目中混合使用这两种技术
8.ASP.NET MVC与Webform技术的架构图
.net mvc 和 三层架构的区别 - IDesire - 樱之花 yinzhihua2008
总结:

 MVC(模型Model-视图View-控制器Controller)是一种设计模式,我们可以用它来创建在域对象和UI表示层对象之间的区分。

  同样是架构级别的,相同的地方在于他们都有一个表现层,但是他们不同的地方在于其他的两个层。

  在三层架构中没有定义Controler的概念。这是我认为最不同的地方。而MVC也没有把业务的逻辑访问看成两个层,这是采用三层架构或MVC搭建程序最主要的区别。当然了。在三层中也提到了Model,但是三层架构中Model的概念与MVC中Model的概念是不一样的,“三层”中典型的Model层是已实体类构成的,而MVC里,则是由业务逻辑与访问数据组成的。


看完本文,相信ASP.NET WebForm与ASP.NET MVC的选择相信大家应该可以做到心中有数了,我始终觉得,很多时候并不是什么技术好不好的问题,而是适合不适合不适合的问题或者能否把它用好的问题。
打个比方:如果让千里马犁地,恐怕未必能达到理想的效果,最终可能还会抱怨,什么破马,一点劲都没有。

  评论这张
 
阅读(3685)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017