• 老A历时近1年写的书《ASP.NET MVC 4框架揭秘》(电子工业出版社“博文视点”)于世界末日前得以出版。本书不是一本介绍ASP.NET MVC的入门书籍, 它针对最新版本的ASP.NET MVC 4,深入剖析底层框架从请求接收到响应回复的整个处理流程(包括URL路由、Controller的激活、Model元数据的解析、Model的绑定、 Model的验证、Action的执行、View的呈现和ASP.NET Web API等),并在此基础上指导读者如何通过对ASP.NET MVC框架本身的扩展解决应用开发中的实际问题。

    ASP.NET MVC是一个建立在ASP.NET平台上基于MVC模式的Web开发框架,它提供了一种与传统Web Form完全不同的Web应用开发方式。ASP.NET Web Form借鉴了Windows Form基于控件和事件注册的编程模式,使Web应用的开发变得简单而快捷,但是它却使开发人员与Web的本质渐行渐远。ASP.NET MVC是一种回归,它使开发人员可以真正地面向Web进行编程,我们面对的不再是拖拉到Web页面的控件,而是整个HTTP请求和响应的流程。

    这不是一本ASP.NET MVC入门书籍

    我个人觉得掌握ASP.NET MVC具有三个层次。了解基本的编程模式,掌握Controller和View的定义方式,知道路由如何注册,以及验证规则如何定义,此为第一层次。第二 层次要求我们对ASP.NET MVC框架本身从请求接收到响应回复的整个流程具有一个清晰的认识,包括请求如何被路由、目标Controller如何被激活、Model元数据如何被解 析、Action方法如何被执行、View如何呈现等。ASP.NET MVC本身是一个极具可扩展的开发框架,合理利用其扩展性可以解决很多开发中的实际问题,而掌握ASP.NET MVC的最高层次就是凭着对框架本身的运行机制的了解准确地找到相应的扩展点,并创建相应的扩展来解决我们遇到的问题。本书不是一本ASP.NET MVC入门书籍,而是让处于第一层次的读者快速进入第二和第三层次的书。

    这是一本讲述ASP.NET MVC框架本质的书

    很多.NET开发人员都在抱怨微软开发技术过快的更新频率让他们无所适从。其实他们看到的只是单纯的版本升级而已,一些本质的东西一直是“稳定”的。 微软推出.NET战略已经十多年了,CLR却只有四个版本而已。最新版本的ASP.NET虽然表面上已经看不到太多最初的影子,但是整个请求处理的管道一 直未曾改变。对于一项开发技术,只要我们了解了它最根本的一些东西,就不应该惧怕其高频率的版本更替,而应该热烈拥抱它。本书力求将关于ASP.NET MVC框架最根本的东西带给大家,而不是罗列一些简单的编程技巧。

    这是一本实用的书

    可能有人觉得这本剖析ASP.NET MVC框架运行原理的书没有什么“实际”的意义,因为我们每天的日常工作就是编程,知道了ASP.NET MVC从请求接收到响应回复之间整个处理流程并不会对我们的工作造成实质性的改变。其实这种想法是极端错误的,因为我们编写的程序最终是在ASP.NET MVC框架上运行的,程序的高效性决定于它是否能够最大限度地“迎合”框架的运行机制,所以了解ASP.NET MVC框架的运行原理有利于我们写出高质量的程序。

    我个人将基于ASP.NET MVC的编程分为两类,即“面向业务编程“和“面向框架编程”。前者根据具体的业务逻辑定义Controller和设计View,这是大部分Web开发人 员的主要工作;后者则是为整个Web应用搭建一个框架,让最终的开发人员只需要关注具体的业务逻辑,而让框架来完成所有与业务无关的部分。对于后者,我们 可以充分利用ASP.NET MVC的扩展性,通过自定义的扩展将非业务的功能自动“注入”到业务逻辑的处理流程中,这样不仅可以提高开发效率,而且还能提高开发质量。本书在剖析 ASP.NET MVC框架运行机制过程中几乎列出了其所有的扩展点,并且通过实例演示的形式提供了很多实用的扩展。

    可以将本书视为一本“架构设计”的书

    在我的周围存在这样的一些人,他们以刚毕业一两年的毕业生为主,他们大都工作勤奋、聪明好学,手中经常捧着GoF的《设计模式》,总是希望将书中的设 计模式应用到具体项目之中,或者希望通过项目的实践来印证他们在书本上的设计模式,但是理论和实践之间的距离总让他们感到困惑。

    要从真实的项目或者产品中学习“实用”的软件架构设计知识,先得确定目标项目或者产品中采用的架构思想和设计模式是正确的,而我们参与的很多项目其实 被“架构”得一塌糊涂。对于像ASP.NET这样的产品,其基础架构能够在很长一段时间内保持不变,本身就证明了应用在上面的架构设计的正确性,它们不正 是我们学习架构设计最好的素材吗?本书对ASP.NET MVC框架的运行机制进行了深入剖析,实际上是将ASP.NET MVC的整个设计展示在读者面前,读者朋友们也许可以将本书作为一本“架构设计”的书来读。

    本书的写作特点

    我想本书的读者可能很多都读过我的《WCF全面解析》,虽然内容不同,本书却可能看成是它的延续,因为它们基本上采用了相同的写作手法。总地来讲,我 基本上采用“原理讲述、代码分析和实例证明”这个模式来介绍某个技术要点,对于一个具体的知识点,我不仅仅会告诉读者“是什么”,还会告诉读者“为什 么”,以及“如何证明是这样”。除此之外,如果某个知识点在真实的项目开发中具有“实用”价值,我一般会给出一个相关的实例演示。

    本书具有一个与其他中文原创或者翻译书籍截然不同的特点,那就是几乎所有的术语都采用英文,比如Controller、Model和View在本书中 并没有翻译成中文“控制器”、“模型”和“视图”。因为我认为很多术语其实很难找到一个语义完全等同的中文词组或短语与之对应,对于习惯了英文作为“开发 语言”的读者来说,强行翻译其实是不必要的。

    这不是一本纯理论的书,而是一本“实证型”的书,在书中提供了110个可供单独下载的实例演示。这些实例在本书中具有不同的作用,有的是为了探测和证明对应的论点,有的是为了演示某种使用的编程技巧,有的直接就是一个完整的案例。

    本书读者

    我们说《ASP.NET MVC 4框架揭秘》不是一本ASP.NET MVC入门书籍,主要是因为本书在第1章并没有提供一个“Hello World”实例,关注重点主要落在ASP.NET MVC框架本身的运行机制上面,但是并不是说本书的读者需要预先对ASP.NET MVC具有多深入的认识才行。如果读者对ASP.NET MVC基本的编程模式具有一定的了解,读懂这本书是完全没有问题的。对于从未接触过ASP.NET MVC的.NET开发人员,可以通过官方网站(http://www.asp.net/mvc)来学习ASP.NET MVC。

WCF全面解析:全2册
¥168.00 ¥126.00(75折)
ASP.NET MVC 3高级编程
¥59.00 ¥43.66(74折)
深入浅出数据分析
¥88.00 ¥66.00(75折)