Web开发模式的颠覆者:ASP.NET MVC
核心提示:2008年3月微软针对ASP.NET 3.5发布的MVC框架(Preview 2 版本)是1个真正意义上的ASP.NET MVC框架。至今,短短4个月内此框架已发展到Preview 4版本。很多国内外业界人士称该框架为其前基于Web表单开发模式的历史性“颠覆”....
2008年3月微软针对ASP.NET 3.5发布的MVC框架(Preview 2 版本)是1个真正意义上的ASP.NET MVC框架。至今,短短4个月内此框架已发展到Preview 4版本。很多国内外业界人士称该框架为其前基于Web表单开发模式的历史性“颠覆”。本文站在对ASP.NET MVC框架与传统ASP.NET Web表单开发模式进行简明理论对照的角度对ASP.NET MVC框架的发展远景作出初步展看。
1、引言
1直以来,软件架构师们在开发软件的方法及架构方面争辩不休。这样的1些典型的例子包括针对ORM与存储进程、REST与SOAP结构的讨论,等等。最近1段时间,在微软社区内又展开了1场有关ASP.NET Web表单与ASP.NET MVC框架的讨论。很多人以为ASP.NET MVC框架最后将会取代Web表单机制,而也有1些人坚持以为ASP.NET MVC框架未来不可能取代如今已牢牢占据.NET平台上ASP.NET开发统治地拉的Web表单技术。那末,究竟ASP.NET MVC框架是否是会取代Webforms呢?
值得留意的是,从1开始,微软的众多权威人士都1致表示:ASP.NET MVC框架仅仅将作为Web表单方案的1种可能的替换方案,而不会完全取代它,而Web表单也不可能取代ASP.NET MVC。因此,真实的发展趋势将是:ASP.NET MVC与Web表单将共同存在,ASP.NET MVC决不会成为Web表单的取代者。所以,假设你比较喜欢ASP.NET MVC,你可以选择使用它;而假设你感到Web表单更容易于上手,你也能够纵情地依照你的传统方式继续使用它。也就是说,两种途径都只是针对不同的选择、不同的方法而已,而提供给开发者不同的选择本身是1件好事,仅此而已。固然,不同的选择也完全可以利用于其他的平台,特别是另1块比较火的Java开发平台。
2、ASP.NET Web表单方案存在的题目
ASP.NET Web表单方案存在哪些方面的不足呢?Web表单的指导思想是把Windows桌面利用中的表单模型引进到Web利用程序的开发中。这类模型很快就吸引了大批的传统Windows桌面利用开发程序员,特别是之前的VB 6.0程序员。今天,很多VB 6.0开发者已转到了ASP.NET Web开发领域,但是他们并没有基本的HTTP与Web基本知识。为了摹拟传统型Windows桌面利用程序中的表单开发体验,Web表单引进了事件驱动的方法,而且还引进了Viewstate和Postback等相干概念。终极,Web表单技术知完全地攻克了Web中无状态特点这个难关。随之而来的是,Viewstate和Postback带来了大量的题目,从而进步了Web利用程序开发的复杂性。例如,即使1些非常简单的Web页面也有可能产生大于100KB尺寸的Viewstate,这固然会在某些情况下严重影响系统的性能。另外,开发职员还没法控制Web表单天生的HTML;而且,ASP.NET服务器控件天生的HTML既混杂有内联方式也包括不符合标准的过期的标签。Web表单所带来的另1个题目是,与JavaScript框架的集成比较困难,这主要是由于天生的HTML的命名惯例所酿成的。另外,Web表单相应的页面生命周期太复杂了,在全部ASP.NET框架中所有内容都是紧耦合型的并且仅使用1个类来负责显示输出和处理用户输进。因此,单元测试几近是1项不可能的任务。而我们都知道,在现代软件开发中,特别是当我们遵守灵敏软件方***及相应惯例开发软件时,单元测试是很重要的。既然Web是无状态的,那末,Postbacks和Viewstate就不会完善的解决方案。
http://www.fw8.net/TAG:方案,微软,框架,版本,表单
评论加载中...
|