《ASP.NET本质论》前言
本书的起源
经常有人问起:应该如何学习 ASP.NET 开发?为什么开始的时候感觉很容易,但是,遇到问题的时候却感到无从下手?太多的人开始学习的时候,对 ASP.NET 有着深深的误解,包括我自己。很多人选择 ASP.NET 的理由是因为它简单:中文开发环境、简体中文的文档、简单的拖放式开发、类似于 WinForm 的开发体验等。Visual Studio 和 .NET Framework为我们提供了一个极其方便的开发环境,很多人因此进入了 ASP.NET 开发之门,甚至有相当多的 ASP.NET 程序员都没有了解过 HTTP 协议的内容,或者 HTML 的语法,也同样在完成着开发任务。
这究竟是 ASP.NET 技术的成功,还是失败?
在 ASP.NET 中,组件技术被用到极致,整个 ASP.NET 就是一个高级组件,内部又可以分为控件组件、状态管理组件、用户管理组件等。组件技术的使用将 ASP.NET 程序员分为两大类:开发组件的程序员和使用组件的程序员。
开发组件的程序员需要掌握 ASP.NET 的运行机制,熟悉 ASP.NET 处理 HTTP 请求的整个过程,对通过.NET 技术来解决 Web 请求处理的方法有着深刻的理解,这一切对程序员有着很高的要求。而使用组件的程序员只需要使用开发完成的组件,将组件通过工具箱拖放到窗体上,然后,通过属性窗口设置组件的属性,再加上一些机械的处理,就可以快速开发出应用程序。甚至完全不需要知道组件的背后在发生着什么。在许多ASP.NET 技术演示中,好像一次魔术表演,就神奇地完成了开发任务。开发中的这种分工提高了开发的效率。
那么,我们希望成为哪一种程序员呢?
成为使用组件的程序员比较容易,成为开发组件的程序员很难。高内聚、低耦合的组件也造成了很陡峭的技术壁垒,需要辛苦地攀登。那么,在这个组件开发的时代,我们还需要学习组件的知识吗?答案是:需要!一定需要!即使我们不开发组件,也不能不理解组件!组件的使用千变万化,但是万变不离其宗。如果你希望成为自由驰骋在 ASP.NET 领域的骑手,那就跟随我进行一次穿越 ASP.NET 的开心之旅吧!
面向的读者
《ASP.NET本质论》面向的读者是准备深入学习 ASP.NET 的学生和有1~2年 ASP.NET 工作经验,但是希望进一步提高开发技能,深入掌握 ASP.NET 高级编程的程序员。通过系统地学习 ASP.NET 的处理机制,为成为一个高级的 ASP.NET 软件开发人员打下坚实的基础。特色
《ASP.NET本质论》不从 C# 讲起,也不讲解控件的属性及使用,没有设计模式的分析,甚至没有任何数据库的内容。所以,不要希望通过本书来学习一个 ASP.NET 的购物网站如何完成。在本书中,有 ASP.NET 与 HTTP 关系的详细分析,有事件处理机制在 ASP.NET 中的应用,有多线程程序在 ASP.NET 中的应用与分析,有控件与流的关系,有控件与 HTML 之间关系的详细分析,有各种状态管理机制实现的内幕。总起来说,这里只有 ASP.NET 的内在运行机制的分析。本书对 ASP.NET 的组件机制进行了详细的分析,希望能够帮助你理解 ASP.NET 应用程序为什么这样写的问题。从前,你可能会使用各种控件,可能还掌握各种开发技巧。通过本书你可以创建自己的组件,发现未知的技巧!看了此书之后,希望你说:原来如此!
如何阅读本书
《ASP.NET本质论》从 HTTP 请求开始,将会带领你穿越整个 ASP.NET 的处理过程,以请求的处理过程为主线,对每一步处理所涉及的技术进行深入的剖析,结合开发中常见的问题,分析问题的原因并给出解决方案。包括最新的 MVC 技术。书中的每一章也独立成篇,你可以根据自己的需要来选择阅读。从第1章~第4章是 ASP.NET 的核心部分,重点讨论了 ASP.NET 中对于请求的处理机制,ASP.NET 中对象与 HTTP 之间的映射关系,应用程序处理管道的处理过程,处理程序的处理机制,以及多线程技术在 ASP.NET 中的应用。
从第5章~第8章是经典的 WebForm 部分,重点讨论了控件的原理与页面的生成机制。详细讨论了流与控件的关系,控件与 HTML 的关系,数据绑定控件与模板的关系,以及 ASP.NET 中各种状态管理技术。
第9章分析了开发 ASP.NET 程序的另外一种选择 ASP.NET MVC 的处理过程,分析了 ASP.NET MVC 应用程序与经典的 ASP.NET 程序之间的关系,以及 MVC 内部的处理过程。并对关键的处理过程进行了详细的讨论。
ASP.NET 应用程序不是一个独立的应用程序,需要寄宿于 Web 服务器之上。第10章讨论了 ASP.NET 与 IIS 服务器之间的关系,并针对不同的 IIS 版本分别分析了其处理过程。
最后一章针对 ASP.NET 应用程序中的用户问题进行了分析,剖析了在 ASP.NET 中处理用户问题的各种方案,对处理不同环节中的用户及其转换关系进行了详细的分析。
致谢
首先要感谢的是华章公司的杨福川编辑,没有他的鼓励和帮助,就不会有这本书的诞生。特别要感谢博客园的帮助和支持,作为专业的 .NET 技术网站,博客园这个灿若繁星的技术宝库为我提供了成长的土壤,本书中的许多问题和案例来源于博客园。
感谢众多的朋友们在我完成本书的过程中给予我的支持和鼓励,你们的帮助是我完成本书的强大动力。
本书的支持
很荣幸出版社给了我这样一个机会与大家分享这些知识。但是由于作者本人水平所限,虽然进行了多次修改,仍然很难尽如人意,已近完稿,心中更加忐忑不安,只是希望能够给大家在学习 ASP.NET 的过程中带来一些帮助。如果大家在读完某些章节之后,对以前希望了解又无从查询的问题感觉豁然开朗,我就聊以自慰了。书中的示例都有相应的源码,可以在我的博客下载,也可以在华章公司的官方网站(www.hzbook.com)上下载。
华章官网下载地址: http://hzbook.com/Books/5565.html
联系作者
电子邮件:haoguanjun@gmail.com博客:http://haogj.cnblogs.com
对《ASP.NET本质论》的任何问题请通过电子邮件联系,我会尽快处理和答复,并在博客上发布与更新。
郝冠军
2011年1月
2011年1月
《ASP.NET本质论》
【China-pub购买】【当当网购买】【卓越亚马逊购买】