MVC 与 WebForm 小论



WebForm:

WebForm是一个快速可视化的web程序开发技术。跟VB一样,几乎是相同的开发模式,只需要简单的拖拽已经封装好的控件到窗体设计器上,VS就会在Behind
Code(aspx.cs)生成相应的代码,开发人员只要在生成的事件框架中写入自己需要的业务逻辑或者数据显示转换等就可以快速的实现某一功能。

简单快捷,尤其是对于我们这种从VB过渡过来的同学们,感觉简直是福音,无论横向对比竖向对比,让我们的感觉很是似曾相识,很容易上手,但是慢慢也会发现它很多不容忽视的问题。

1:紧耦合

我们开发常常说的一句话就是要降低耦合度,WebForm这种开发模式在开发的前期会给我们带来很爽的快感,但是,后期就会为了适应它而不断的做出妥协,最终出现越来越多的负面效果。

WebForm中的aspx.cs
文件永远不能与aspx文件分离开来。换句话说,我们不能轻易的将aspx.cs和aspx组合到一起,Behind
Code 和视图紧紧关联在一起,不能被复用。

2:又是一种面向过程的感觉。。

WebForm在使用过程中不知不觉的就给人一种面向过程的感觉,整个开发过程好像不会涉及什么类或者抽象之类的东西,界面好了然后添加控件在控件之后写好代码貌似整个系统就差不多个样子了,没有一点面向对象的感觉。

3:灵活性差

当我们给用户一个Response时,其实包含View
和 Data
两部分。WebForm是一个视图优先的框架,所以它很难灵活的切换最终呈现给用户的视图,不仅如此,视图还要负责调用逻辑处理的代码,这完全违背了单一职责原则。

WebForm很多东西都是写死的,界面可控性比较差。

MVC

微软推出的另一个框架MVC很大程度上完善了WebForm的弊端。

MVC是一个基于行为的架构,使用MVC架构后,终端用户发送它的请求到Web服务器,服务器将其指定给Controller,Controller找到一个对应的Action进行处理,然后Action有两件事要做,第一根据需要访问Model获取数据,然后再将获取的数据传递给合适的View,最终将View发送给终端用户的浏览器。

WebForm的最大优势就是可视化快速开发,即使现在我们看起它来是那样的繁琐和不堪入目,但它确实能够将你的程序开发速度加快。

MVC和WebForm
两个开发框架,其实没有什么优劣之分,重点在于用在哪里,什么时候用,just---“变是永远不变的”

时间: 2024-07-28 23:50:06

MVC 与 WebForm 小论的相关文章

webform改版MVC遇到一些小问题

最近在给webform项目改成MVC遇到一些小问题分享一下 (1)我们在webform中经常用一个静态文件去存放一些JS,css之类的东西然后在页面调用 例如: <!--#include virtual="/ggNew/include/css/detailstyle.htm"--> 但是这段代码在MVC中被当做注释掉处理了,MVC中不能使用include,只能在页面去引用脚本,或者将脚本放入部分视图中使用 (2)MVC中在controller里面不能识别Response.E

MVC和WebForm的优缺点对比

1 WebForm优点 1)支持事件模型开发,得益于丰富的服务端组件,WebForm开发可以迅速的搭建Web应用 2)使用方便,入门容易 3)控件丰富的WebForm 2 WebForm缺点  1)封装太强,很多地层东西让我们初学者不是很明白  2)入门容易,提升很难.  3)复杂的生命周期模型学习起来并不容易.  4)控制不灵活  5)ViewState处理  6)异步请求每个请求后台都必须有一个一般处理程序对应 7)跟传统的Web开发方式不一致 3 MVC优点 1)很容易将复杂的应用分成M,

念念不忘,ASP.NET MVC显示WebForm网页或UserControl控件

学习与使用ASP.NET MVC这样久,还是对asp.net念念不忘.能否在asp.net mvc去显示aspx或是user control呢?这个灵感(算不上灵感,只能算是想法)是来自前些天有写过一篇<多个视图结果显示于一个共用预览视图内>http://www.cnblogs.com/insus/p/3633298.html 其中有一个Render方法.以致想起以前开发asp.net时,也经常Render用户控件.即是说把网页经过Render之后,转换为是一串字符串. 那我们也一定可以把这串

MVC和WebForm 中国省市区三级联动

MVC和WebForm是微软B/S端的两条腿,两种不同的设计理念,相对来说MVC更优于WebForm对于大数据的交互,因为WebForm是同一时间传输所有数据,而MVC它只是传输所用到的数据,更精确,传输量少等待数据传输的响应时间就短.但是WebForm也有他的优点,比如说设计起来更像Winform容易理解. SQL表如下: 根据ParentAreaCode=0001可以查出省级地市, 对应的省级地市有AreaCode 根据不同的AreaCode输入在ParentAreaCode中可以查出省级地

Mvc与WebForm优缺点及Mvc的使用

关于Mvc与WebForm的优缺点在网上的评论可谓不胜枚举,但脱离了我们的项目来谈这些意义就不大了.以我们这次改版来看,WebForm的优势有以下几点: 一,可以使用<#include>,css.html与js可以实现跨页面乃至夸项目的重用,Mvc没有发现此类功能: 二,可以精确的调用用户控件中的属性.字段.函数并可以获得相应的返回值,Mvc也未发现此类功能: 三,可以方便的将公共或保护性字段属性函数等应用到aspx页面上,Mvc无法直接调用控制其中的相应字段属性等. 针对以上WebForm的

MVC与WebForm的区别

在初步了解MVC后,发现很多人对于MVC和三层架构开发概念上会有很大的混淆,所以把这两天的学习笔记整理一下,分享给自己的同学们.同时也做一个小Demo,让没有接触过MVC开发的同学,能对MVC有一个简单的了解. 一,MVC和三层架构的区别 ①什么是三层架构? 在学校的时候,和同学或者老师一起讨论MVC的时候,别人可能会说,“不就是三层架构嘛!实体层(Model),用来创建对象的实体:业务逻辑层(BLL),用来处理复杂的数据间的关系或者是业务间的关系:数据库访问层(DAL),用来用来访问数据库的:

MVC进阶讲解+小技巧-乱七八糟

开发步骤 1.建立项目 2.建立文件夹 3.建立Controllers 4.生成页面 5.编写Html+Js 6.编写异步请求的Action的方法,返回部分页(用于分页) 7.Js中显示部分页 8.增加新增按钮,增加Add的Action,并生成页面 9.新增页面Html+Js,增加保存Js方法,$.post到SaveAction,保存成功后关闭页面 http://www.cnblogs.com/wlb/archive/2009/12/07/1618954.html 第一次接触到MVC,才知道,什

MVC比WebForm的优势,为什么使用MVC

前言 如果你看了最近微软的议程,你会发现他们现在的焦点除了MVC,还是MVC.问题在于为什么微软如此热衷于丢弃传统的APS.NET Webform而转向ASP.NET MVC?本文就主要来讨论这个问题. ASP.NET Webform 后台代码(behind code)—— 福音与诅咒 如果你密切关注过ASP.NET Webform技术,你会发现它更接近可视化设计,换句话说,开发者只需要从设计面板中拖拽控件即可完成UI,接着在behind code中实现逻辑代码即可完成最后的Web页面功能. 所

ASP.NET MVC与WebForm对比

MVC优点:1.分离更彻底,分层清晰,易于维护和扩展.2.验证更加方便快捷.3.无ViewState,页面更加干净4.路由更容易定义url,对SEO比较好.5.强类型VIEW实现,更安全高效. WebForm优点:1.支持事件模型开发,服务器端组件丰富.2.控件丰富 WebForm缺点:1.封装太强,底层东西难明白.2.ViewState处理,页面臃肿.3.自定义控制不灵活. 扩展阅读: WebForm与MVC混用