ASP.NET MVC案例教程(基于ASP.NET MVC beta)——第七篇:闲话ASP.NET MVC
2008-11-06 13:31:29 来源:WEB开发网本文示例源代码或素材下载
前言
写这篇文章的目的,是想总结一些东西,以帮助朋友们更好的使用这个框架。但是,我又不像把官方列举的哪些优势、功能翻译过来列举在这里。所以,我想干脆我就纯从个人观点上对这个框架评论一下吧。说的不好的,不对的还请批评指正。^_^
ASP.NET MVC——螺旋进步的产物
对于微软为什么要推出ASP.NET MVC,我们是无从得知的,也许是因为JavaEE平台上有Struts,也许是因为MVC太流行,也许微软是想使得自己的Web App平台更完善,总之我们只能猜测。但是如果回顾一下微软的Web App平台进化过程,还是很有意思的。
ASP——微软最早为Web开发做出的贡献可能就是ASP了,这个动态语言把动态网页开发的难度空前降低了。但是,在很多人兴奋的用ASP写着一个又一个动态网页时,它的缺点渐渐暴露:语言过于简单,没有面向对象支持、没有好的IDE支持、动态脚本和静态HTML杂糅在一起,使得修改及维护极为困难。
Web Form——说实话,即使是用现在的眼光看,微软推出的Web Form编程模型确实是很有创意,也很实用。微软开创性地将桌面应用的开发模式引入Web应用开发:拖控件、写事件处理、运行...一切都那么美好,而且前段静态代码和后端程序完全隔离在两个文件里,并且用户可以使用.NET平台上任意一种语言进行后端编程。对程序员来说,使用C#进行编程比使用ASP实在是舒服太多了。所以,Web Form模型可以说成为.NET Web App开发的代名词,所有基于.NET平台的Web开发人员都熟悉并接受了这种模型。
ASP.NET MVC——就在Web Form大行其道时,微软推出了ASP.NET MVC。严格说,ASP.NET MVC和Web Form是不具有可比性的,Web Form是一个完整的新型模型,从顶层到底层是一整套的东西,而ASP.NET MVC只是给Web Form穿了件MVC样子的外套,它应该是基于Web Form的一种编程方式模型扩展。但是,从开发人员看,ASP.NET MVC的推出确实大大改变了我们的开发方式,很多Web Form下的方式不被提倡了(你仍可以用,因为ASP.NET MVC也是基于Web Form的),例如,曾饱受赞扬的服务器端控件再度被抛弃,转而再次使用客户端控件,事件驱动模型被抛弃,转而使用了类似传统的Url跳转处理模型。而且在数据验证等方式上与Web Form下提倡的方式有了很大变化。
赞助商链接