最优化ASP.NET--面向对象开发实践
基本信息
编辑推荐
专家技术经验,实践智慧结晶
Asp.net 领域的Effective C++
世界.NET权威专家JEFFREY PUTZ 力作
微软MVP、北京.NET俱乐部主席宝玉与陈远、周勇三人倾力译作
微软亚洲研究院研发部经理邹欣亲自作序鼎力推荐
内容简介回到顶部↑
这是一本关于asp.net和面向对象程序设计的书,asp.net和传统的脚本式语言(如asp)相比,一个重要的进步就是它提供了一个真正的面向对象的编程模型,使我们可以很好地将用户界面层、业务逻辑层和数据访问层分离,使我们的系统具有更好的性能,更加稳定和易于维护。
本书涵盖了asp. net和面向对象程序设计的方方面面,如对象模型、类的设计、程序架构、事件模型、服务器控件、成员管理等。书中不仅详细讲述了程序设计的具体方法,而且还深入分析了如何使这些方法在开发过程中实现最优化。稍有asp. net 基础的读者,在读完此书后,无论是在理论上还是程序设计技巧上都会得到很大的提高。
本书还介绍了一些实际开发中非常实用的工具的用法,如开发工具visual studio、代码和版本管理工具visual source safe和非常有效的工作流程如测试驱动的开发。本书的另一个显著特点是提供了大量的示例代码,以或大或小的例子形象展示了各种方法的应用场景和技巧。
本书涵盖了asp. net和面向对象程序设计的方方面面,如对象模型、类的设计、程序架构、事件模型、服务器控件、成员管理等。书中不仅详细讲述了程序设计的具体方法,而且还深入分析了如何使这些方法在开发过程中实现最优化。稍有asp. net 基础的读者,在读完此书后,无论是在理论上还是程序设计技巧上都会得到很大的提高。
本书还介绍了一些实际开发中非常实用的工具的用法,如开发工具visual studio、代码和版本管理工具visual source safe和非常有效的工作流程如测试驱动的开发。本书的另一个显著特点是提供了大量的示例代码,以或大或小的例子形象展示了各种方法的应用场景和技巧。
作译者回到顶部↑
本书提供作译者介绍
作者:
Jeffrey Putz是POP World Media,LLC的创始人,这家公司最初的目的在于组织多个业余爱好者的Web站点,并逐步成为一家真正的商业运作公司。Jeffrey六年级时在一台TRS-80上开始了他的编程生涯并随后迁移到Atari 600XL和Apple II+。在广播界换了几份工作之后,1998年Jeffrey回到了计算机领域并迎接Internet的到来,他为几家公司担任过程序与管理的角色,特别是在垂直销售领域。
Jeffrey的POP论坛程序(http://www.popforums.com)已经被下载了成千上万次,并曾被作为MSDN杂志的封面(2.. << 查看详细
Jeffrey Putz是POP World Media,LLC的创始人,这家公司最初的目的在于组织多个业余爱好者的Web站点,并逐步成为一家真正的商业运作公司。Jeffrey六年级时在一台TRS-80上开始了他的编程生涯并随后迁移到Atari 600XL和Apple II+。在广播界换了几份工作之后,1998年Jeffrey回到了计算机领域并迎接Internet的到来,他为几家公司担任过程序与管理的角色,特别是在垂直销售领域。
Jeffrey的POP论坛程序(http://www.popforums.com)已经被下载了成千上万次,并曾被作为MSDN杂志的封面(2.. << 查看详细
目录回到顶部↑
序言 xv
致谢 xxi
关于作者 xxiii
第1部分 1
第1章 对象模型 3
抛开线性脚本的思维方式 3
类和对象 7
与汽车类比 7
对象继承 9
你的类可以编写得像微软的一样特别 14
总结 15
第2章 类:隐藏在对象背后的代码 17
访问限定修饰符 18
类的声明 18
构造函数 19
属性和私有成员变量 21
方法 23
成员作用域 26
重载 27
静态(共享)成员 28
致谢 xxi
关于作者 xxiii
第1部分 1
第1章 对象模型 3
抛开线性脚本的思维方式 3
类和对象 7
与汽车类比 7
对象继承 9
你的类可以编写得像微软的一样特别 14
总结 15
第2章 类:隐藏在对象背后的代码 17
访问限定修饰符 18
类的声明 18
构造函数 19
属性和私有成员变量 21
方法 23
成员作用域 26
重载 27
静态(共享)成员 28
译者序回到顶部↑
很多人,特别是刚开始接触Web编程的人都有这样一种印象:Web编程只不过是做网页而已。从狭义的概念上来讲,我们的确可以这么认为,因为Web编程的根本目的就在于通过网页实现用户和程序间的交互,从而将我们定义好的功能和信息呈现给用户。
回顾历史,从原始的CGI技术到ASP、Cold Fusion等各种各样的脚本技术,Web Application的构建技术在编程模型的不断抽象中获得了长足的发展。从最开始基于过程的处理模型,到基于对象的解释型服务端脚本,再到面向对象技术的引入,Web Application的构建技术随着技术的进步在不断吸收着新鲜的血液。新千年伊始,微软.NET平台的推出不但引燃了新一轮的平台之争,ASP.NET的推出更是前所未有地将Windows上基于消息的回调机制融合到Web编程当中!而面向服务架构、Ajax、Web 2.0等新概念的提出,让Web Application构建技术越来越成为企业级应用开发技术的主力军。只要上网搜索一下就不难发现,Web编程技术现在正处于一个极度膨胀的发展阶段,各种新技术层出不穷。
Web编程技术由于其瘦客户端、分布式计算等特性在未来计算技术发展的趋势中具有先天的优势。所以说无论过去、现在还是将来,Web编程从来没有也将永远不会停止前进的步伐,作为开发人员,我们只能尽自己的努力紧紧地跟上技术更新的步伐。再简单的事情只要深究下去就变会得不简单,Web编程不仅仅是做网页而已!
那么,如何才能掌握最新的ASP.NET技术来创建面向对象架构的应用呢?本书的作者Jeffrey Putz用平实、简洁而又不失风趣的语言给出了答案。从面向对象应用架构的创建,到ASP.NET各项子技术的分析和应用,Jeffrey为我们揭开了面向对象开发的层层面纱,游刃有余地为我们展现了ASP.NET强大的能力和利用它创建优秀应用程序架构的渐进过程。尤其难能可贵的是,作者并没有采用教条式的说教,而是从一种良师益友的角度来教导你,辅以大量示例代码和鞭辟入里的分析,以及导师般地指明一些设计上的技巧和通用手法,从而让读者循序渐进,逐渐摆脱旧有观念的槽臼,切实体会到面向对象开发的精髓所在。无论是对于那些初次接触ASP.NET的新手还是从脚本程序员过渡过来的老手,本书都不只是一本入门指导,它更会成为你开发中常伴手边的良师益友。对于每一位希望在ASP.NET技术领域有所造诣的读者,本书应能帮助你少跌几次跤,少碰几次壁,更快更好地成为一名优秀的开发人员,这也是作者和我们的最大心愿!
本书由我和刘俊民、周勇三人合译。他们都是我的师兄,无论在技术上还是文笔上都令我折服,同他们合作是一段美妙的经历。我还要感谢微软亚洲研究院技术转化组的Dev Lead邹欣老师,他为译本奉献了一篇幽默而又充满智慧的序言。此外,本书的编辑杨福川为中文版的润色付出了辛勤的努力。力求保持原书的思想精髓,并尽力使得作者的睿智之言不因语言的转化而失去光泽,是我们共同的目标。在此,也希望读者在阅读过程中能够提出宝贵意见,帮助我们不断提高译本的质量。
最后,我要特别感谢亲爱的父母,他们的支持让我义无反顾地朝着自己感兴趣的领域发展,是他们让我在前进的道路上充满力量!
陈 远
2006-7-9于微软亚洲研究院
回顾历史,从原始的CGI技术到ASP、Cold Fusion等各种各样的脚本技术,Web Application的构建技术在编程模型的不断抽象中获得了长足的发展。从最开始基于过程的处理模型,到基于对象的解释型服务端脚本,再到面向对象技术的引入,Web Application的构建技术随着技术的进步在不断吸收着新鲜的血液。新千年伊始,微软.NET平台的推出不但引燃了新一轮的平台之争,ASP.NET的推出更是前所未有地将Windows上基于消息的回调机制融合到Web编程当中!而面向服务架构、Ajax、Web 2.0等新概念的提出,让Web Application构建技术越来越成为企业级应用开发技术的主力军。只要上网搜索一下就不难发现,Web编程技术现在正处于一个极度膨胀的发展阶段,各种新技术层出不穷。
Web编程技术由于其瘦客户端、分布式计算等特性在未来计算技术发展的趋势中具有先天的优势。所以说无论过去、现在还是将来,Web编程从来没有也将永远不会停止前进的步伐,作为开发人员,我们只能尽自己的努力紧紧地跟上技术更新的步伐。再简单的事情只要深究下去就变会得不简单,Web编程不仅仅是做网页而已!
那么,如何才能掌握最新的ASP.NET技术来创建面向对象架构的应用呢?本书的作者Jeffrey Putz用平实、简洁而又不失风趣的语言给出了答案。从面向对象应用架构的创建,到ASP.NET各项子技术的分析和应用,Jeffrey为我们揭开了面向对象开发的层层面纱,游刃有余地为我们展现了ASP.NET强大的能力和利用它创建优秀应用程序架构的渐进过程。尤其难能可贵的是,作者并没有采用教条式的说教,而是从一种良师益友的角度来教导你,辅以大量示例代码和鞭辟入里的分析,以及导师般地指明一些设计上的技巧和通用手法,从而让读者循序渐进,逐渐摆脱旧有观念的槽臼,切实体会到面向对象开发的精髓所在。无论是对于那些初次接触ASP.NET的新手还是从脚本程序员过渡过来的老手,本书都不只是一本入门指导,它更会成为你开发中常伴手边的良师益友。对于每一位希望在ASP.NET技术领域有所造诣的读者,本书应能帮助你少跌几次跤,少碰几次壁,更快更好地成为一名优秀的开发人员,这也是作者和我们的最大心愿!
本书由我和刘俊民、周勇三人合译。他们都是我的师兄,无论在技术上还是文笔上都令我折服,同他们合作是一段美妙的经历。我还要感谢微软亚洲研究院技术转化组的Dev Lead邹欣老师,他为译本奉献了一篇幽默而又充满智慧的序言。此外,本书的编辑杨福川为中文版的润色付出了辛勤的努力。力求保持原书的思想精髓,并尽力使得作者的睿智之言不因语言的转化而失去光泽,是我们共同的目标。在此,也希望读者在阅读过程中能够提出宝贵意见,帮助我们不断提高译本的质量。
最后,我要特别感谢亲爱的父母,他们的支持让我义无反顾地朝着自己感兴趣的领域发展,是他们让我在前进的道路上充满力量!
陈 远
2006-7-9于微软亚洲研究院
序言回到顶部↑
微软已经为Web开发人员献上了一份大礼。自从2001年以Beta形式第一次介绍给公众开始,.NET Framework以及它的ASP.NET子集已经改变了我们创建Web应用程序的方式。在这之前,大部分人甚至还没有考虑过“应用程序(application)”这一术语,而是仅仅把松散的脚本集中起来组成一个Web站点。
对于许多开发人员来说,促成这个转变需要严肃的信念和大量新知识的学习。ASP 3.0、ColdFusion和PHP等脚本语言可以使得那些具有很少甚至没有任何编程经验的人快速地学习整个平台并开始构建动态web站点,甚至不需要多年的开发经验或者计算机科学方面的学术背景。
虽然学术背景不是必须的,但是对于ASP.NET来说,脚本开发人员需要在他们的思想中进行一些相当激进的改变才能最有效地使用这个令人惊异的平台。本书的目的就在于帮助你完成这个转变,如果你已经相当精通面向对象设计,它会让你熟悉ASP.NET平台架构。
为什么写这本书
在浏览了Internet上大量的论坛和新闻组后,我越来越清晰地看到许多聪明的开发人员在过渡到ASP.NET过程中,在理解和运用面向对象上遇到了一些麻烦。一方面我们在赞扬微软为我们发布了这个平台,一方面又在抱怨他们把ASP.NET做得如此安全诱人,因为它并不是逼着你遵守他们所规划的“最佳实践(best practice)”,你甚至可以使用传统的脚本方式完成相同的工作。
编写一本直接介绍某项技术的书,或者是一本包含各种各样帮助的“食谱(cook book)”不是难事,但是我的真正目的是要编写一本帮助你理解平台底层概念和架构的指南,这样你也可以将同样的概念应用于自己的应用程序中。实际上,我在第2章中就指出了:“你所编写的代码与微软在成千上万个.NET基类中的代码并没有什么不同”,但是一本“食谱”或者概览(overview)无法帮你理解这一点。
本书并非面向对象技术的传教书,目的仅在于向你展示隐藏在这一概念背后的基本原理,从而鼓励你去使用它。希望能激发你的灵感,使你感叹:“哦!我明白了,原来是这样子的!”使用OOP只是因为它比另外的方法更好。
这本书适用于谁
这本书假设你已经对ASP.NET的基本知识已经有了入门性地了解,并且基本掌握相关的C#或者VB.NET语言,也假设你对使用Microsoft SQL Server具有基本的理解并知道什么是关系数据库。你可能以前是一名脚本开发人员,希望学习Asp.Net平台以及它强大的面向对象架构。你也可能是一个经验丰富的开发人员,希望能够了解一些ASP.NET平台的特定细节,使你能熟练掌握控制它,这些开发人员可以跳过部分章节。
本书都是基于上下文的,不论你以前属于哪个技术阵营。开发人员通常都是高智商人士,主要通过理解而不仅仅是通过记忆来学习。本书基于面向对象编程并将它应用于ASP.NET和Visual Studio,给读者提供更全面的技术,其中包括:应用程序设计、测试驱动的开发、代码复用、模块化以及对性能的关注。本书通过从“如何做”推进到“为什么这么做”,将整个平台放到上下文中讨论,并不只是解释概念,同时以最佳方式推广它们以解决实际的问题。如果你以前一直是写脚本语言,或者希望使你的技术更加适用于.NET编程的其他领域,那么这本书将非常适合你。
如果你是ASP.NET的新手,这本书并不适合你。你应该从那些有“初学者”或者“入门”字样标题的书开始学起。当你已经掌握了基础知识之后,再回到本书来加强你的知识。我们不希望涵盖诸如模板页、用户控件、数据库操作、窗体验证 等基本知识。
我认为前面的术语“最佳实践”有点用词不当。某些概念和方法论的确比另外一些要好,但是这个术语是在整个程序世界里的普遍真理。一些人可能认为只有死亡和纳税才是真正的普遍真理,因此每当你读到我所坚信的最佳实践时,请记住,根据你的经验以及当前的问题,可以有很多解释的余地。同样对于其他任何事情,请使用能够适合自己需求的方式工作。
约定
当有代码需要展示时,它们的形式如下所示:
C#
public class ThisIsAGreatClass
{
// lots of code here
}
对于许多开发人员来说,促成这个转变需要严肃的信念和大量新知识的学习。ASP 3.0、ColdFusion和PHP等脚本语言可以使得那些具有很少甚至没有任何编程经验的人快速地学习整个平台并开始构建动态web站点,甚至不需要多年的开发经验或者计算机科学方面的学术背景。
虽然学术背景不是必须的,但是对于ASP.NET来说,脚本开发人员需要在他们的思想中进行一些相当激进的改变才能最有效地使用这个令人惊异的平台。本书的目的就在于帮助你完成这个转变,如果你已经相当精通面向对象设计,它会让你熟悉ASP.NET平台架构。
为什么写这本书
在浏览了Internet上大量的论坛和新闻组后,我越来越清晰地看到许多聪明的开发人员在过渡到ASP.NET过程中,在理解和运用面向对象上遇到了一些麻烦。一方面我们在赞扬微软为我们发布了这个平台,一方面又在抱怨他们把ASP.NET做得如此安全诱人,因为它并不是逼着你遵守他们所规划的“最佳实践(best practice)”,你甚至可以使用传统的脚本方式完成相同的工作。
编写一本直接介绍某项技术的书,或者是一本包含各种各样帮助的“食谱(cook book)”不是难事,但是我的真正目的是要编写一本帮助你理解平台底层概念和架构的指南,这样你也可以将同样的概念应用于自己的应用程序中。实际上,我在第2章中就指出了:“你所编写的代码与微软在成千上万个.NET基类中的代码并没有什么不同”,但是一本“食谱”或者概览(overview)无法帮你理解这一点。
本书并非面向对象技术的传教书,目的仅在于向你展示隐藏在这一概念背后的基本原理,从而鼓励你去使用它。希望能激发你的灵感,使你感叹:“哦!我明白了,原来是这样子的!”使用OOP只是因为它比另外的方法更好。
这本书适用于谁
这本书假设你已经对ASP.NET的基本知识已经有了入门性地了解,并且基本掌握相关的C#或者VB.NET语言,也假设你对使用Microsoft SQL Server具有基本的理解并知道什么是关系数据库。你可能以前是一名脚本开发人员,希望学习Asp.Net平台以及它强大的面向对象架构。你也可能是一个经验丰富的开发人员,希望能够了解一些ASP.NET平台的特定细节,使你能熟练掌握控制它,这些开发人员可以跳过部分章节。
本书都是基于上下文的,不论你以前属于哪个技术阵营。开发人员通常都是高智商人士,主要通过理解而不仅仅是通过记忆来学习。本书基于面向对象编程并将它应用于ASP.NET和Visual Studio,给读者提供更全面的技术,其中包括:应用程序设计、测试驱动的开发、代码复用、模块化以及对性能的关注。本书通过从“如何做”推进到“为什么这么做”,将整个平台放到上下文中讨论,并不只是解释概念,同时以最佳方式推广它们以解决实际的问题。如果你以前一直是写脚本语言,或者希望使你的技术更加适用于.NET编程的其他领域,那么这本书将非常适合你。
如果你是ASP.NET的新手,这本书并不适合你。你应该从那些有“初学者”或者“入门”字样标题的书开始学起。当你已经掌握了基础知识之后,再回到本书来加强你的知识。我们不希望涵盖诸如模板页、用户控件、数据库操作、窗体验证 等基本知识。
我认为前面的术语“最佳实践”有点用词不当。某些概念和方法论的确比另外一些要好,但是这个术语是在整个程序世界里的普遍真理。一些人可能认为只有死亡和纳税才是真正的普遍真理,因此每当你读到我所坚信的最佳实践时,请记住,根据你的经验以及当前的问题,可以有很多解释的余地。同样对于其他任何事情,请使用能够适合自己需求的方式工作。
约定
当有代码需要展示时,它们的形式如下所示:
C#
public class ThisIsAGreatClass
{
// lots of code here
}
相关资源回到顶部↑
· 精彩书评..
· 【推荐】众多高校学子口口相传,他们共同的选择--华清远见嵌入式学院(嵌入式Linux就业课程、3G手机开发就业课程,通过入学测试即签100%就业协议,4个月集中实训,世界500强企业成功就业保障!!!)· 【亚嵌教育 嵌入式培训专家】(嵌入式培训,嵌入式Linux培训,ARM培训,Linux培训,3G培训,Android培训,WINCE培训,DSP培训,FPGA培训,嵌入式就业培训)
· InfoQ中文站论坛:.NET讨论区(InfoQ .NET)
· 程序员的7种武器(正则表达式、编程语言、数据库、算法、软件调试、开发环境)
· WCF的开山之作 WCF画卷的清明上河图(WCF WF WPF)
评论交流
共有40人开贴评论 53人参与评论 38人参与打分 查看
评价等级:







发表于:2006-10-13 11:17:00
ASP.NET领域的Effective C++
——读《最优化ASP.NET——面向对象开发实践》有感
来自:Scott Forsyth’s Weblog
翻译:erwa_yang
http://weblogs.asp.net/owscott/archive/ 2005/05/28/409590.aspx―――――――――――――――――――――――――――――――――――――
在《最优化ASP.NET——面向对象开发实践》这本书问世之前,我从未读到一本从头倒尾都写得如此全面、深刻的技术书籍。这本书让我爱不释手,我几乎抓住每天清晨和每次吃饭前等一切可以利用的时间来阅读这本书。
书中讲述的内容正好是我近两年来一直想要寻找和学习的,其中包含大量的代码示例、简单易懂的程序编写方式和作者Jeffery Putz的宝贵经验。我有较强的ASP和PHP背景,但是我的ASP.NET技术却一般。我从不认为我已经掌握了面向对象程序设计的技巧。随着时间的推移,我学习了越来越多的关于ASP.NET方面的知识。我一直在试图找这样一本书,希望它能够将我所学的知识贯穿起来并消化掉。零零散散地,我读了很多其他的书,渐渐也懂得了面向对象的概念,但是我希望能从ASP.NET的角度进一步理解它。
Putz的这本《最优化ASP.NET——面向对象开发实践》很详细地讲述了面向对象开发方面的知识,从概念到如何将它与ASP.NET结合起来。书中有大量基于VB和C#的程序代码,而且这些代码都相当清楚而简洁。在我所读过的很多书中,每一本书中都只有少部分章节值得认真去回味与咀嚼,其他更多的内容我们则应该放弃。但是《最优化ASP.NET——面向对象开发实践》这本书却完全不一样,它的每一个章节都值得我认真去读。书中有一个章节专门讲述了有关HTTPModules和HTTPhandlers方面的知识。直接将这些内容作为参考资料会比逐字逐句读其他的整本著作更好,正因为如此,我对这本书更是爱不释手。
这本书另外一个值得称道的地方是:它是以一本非常棒的参考书的方式来组织和编写的。利用本书后面的索引,读者可以方便、快捷地找到自己想要地信息。当你第一次读到这本书的时候,浏览一下前面的目录和用标记着重强调地地方,会对你读这本书有非常大的帮助。
和许多其他的书一样,这本书也并不适合每一位读者。它适合于那些对ASP.NET已经有一定了解、有一定Web开发经验、不再需要花时间去学习ASP.NET基础知识的读者。
这本书还有许多其他值得称道的地方,在我读完这本书之前,我已经预定数本并送给了那些能从中受益的朋友。在那些在面向对象开发方面需要一份彻底、准确、易懂的参考资料的读者面前,我都对此书作了极高度的评价。
——读《最优化ASP.NET——面向对象开发实践》有感
来自:Scott Forsyth’s Weblog
翻译:erwa_yang
http://weblogs.asp.net/owscott/archive/ 2005/05/28/409590.aspx―――――――――――――――――――――――――――――――――――――
在《最优化ASP.NET——面向对象开发实践》这本书问世之前,我从未读到一本从头倒尾都写得如此全面、深刻的技术书籍。这本书让我爱不释手,我几乎抓住每天清晨和每次吃饭前等一切可以利用的时间来阅读这本书。
书中讲述的内容正好是我近两年来一直想要寻找和学习的,其中包含大量的代码示例、简单易懂的程序编写方式和作者Jeffery Putz的宝贵经验。我有较强的ASP和PHP背景,但是我的ASP.NET技术却一般。我从不认为我已经掌握了面向对象程序设计的技巧。随着时间的推移,我学习了越来越多的关于ASP.NET方面的知识。我一直在试图找这样一本书,希望它能够将我所学的知识贯穿起来并消化掉。零零散散地,我读了很多其他的书,渐渐也懂得了面向对象的概念,但是我希望能从ASP.NET的角度进一步理解它。
Putz的这本《最优化ASP.NET——面向对象开发实践》很详细地讲述了面向对象开发方面的知识,从概念到如何将它与ASP.NET结合起来。书中有大量基于VB和C#的程序代码,而且这些代码都相当清楚而简洁。在我所读过的很多书中,每一本书中都只有少部分章节值得认真去回味与咀嚼,其他更多的内容我们则应该放弃。但是《最优化ASP.NET——面向对象开发实践》这本书却完全不一样,它的每一个章节都值得我认真去读。书中有一个章节专门讲述了有关HTTPModules和HTTPhandlers方面的知识。直接将这些内容作为参考资料会比逐字逐句读其他的整本著作更好,正因为如此,我对这本书更是爱不释手。
这本书另外一个值得称道的地方是:它是以一本非常棒的参考书的方式来组织和编写的。利用本书后面的索引,读者可以方便、快捷地找到自己想要地信息。当你第一次读到这本书的时候,浏览一下前面的目录和用标记着重强调地地方,会对你读这本书有非常大的帮助。
和许多其他的书一样,这本书也并不适合每一位读者。它适合于那些对ASP.NET已经有一定了解、有一定Web开发经验、不再需要花时间去学习ASP.NET基础知识的读者。
这本书还有许多其他值得称道的地方,在我读完这本书之前,我已经预定数本并送给了那些能从中受益的朋友。在那些在面向对象开发方面需要一份彻底、准确、易懂的参考资料的读者面前,我都对此书作了极高度的评价。
评价等级:







发表于:2006-9-22 9:19:00
1、 这本书试图教会开发者们如何正确使用ASP.NET去开发应用程序,且又不局限于书本上那些内容。然而,作者尝试在一本只有336页的书里面尽可能讲述更多的东西。
前两章只是告诉非面向对象程序员们如何用C#和VB.NET去编写面向对象程序。但由于缺少一些编程上的细节和恰如其分的例子使得这本书更适合经验丰富的面向对象程序员,任何企图从这本薄薄的只有34页的章节里学习一些基本的面向对象程序设计的人都会感到失望。
余下的章节与作者的期望比较接近,他对如何用代码实现程序接口和n-tier开发的反复讨论正是这本书的亮点之一,这或许就是读者购买这本书的最大理由吧。
作者在书中给出了很多关于代码的新技术,甚至提到一些在ASP2.0中很前沿的前瞻性程序设计。本书大部分都用的是ASP2.0的例子,但是ASP2.0测试版的第二版都还没有发布呢,所以,那些例子的代码在ASP.NET 2.0最终版本发布以后还要作一些相应的修改才能用。虽然我没有发现任何代码运行的时候不稳定,但是我还是希望他们能对代码作一些必要的修改。
这本书有时候用的代码例子是将作者免费的POP论坛程序作为现实世界中的学习例子。他给出了一点代码片段,并用自己的方法作了解释。从软件工程学的观点来说:他把数据层抽象数据到了某一程度只用代码去实现接口问题。这是非常棒的主意,比如,它允许你加上一个完全不同的底层联结用Access代替SQL Server。
他从商业对象层级的角度解释了数据接入分离的交换原理,他对这些的解释非常有趣而且和现实世界中的程序设计又非常贴近。
他对一些有操作性的代码阐述的非常详细,这远比一些泛泛而谈的书来好的多。他对一些高级概念给出了自己的解释,如:HTTP主控端、HTTP模块以及服务器控制;但是他对Web服务器相关内容看起来似乎有点让人难以接受,因为里面连基于服务方向的建构这些内容只字未提。
对ASP2.0中会员和安全这些功能的特性作了很好的解释,作者甚至讲述了如何构键自己membership provider!更让人高兴的是,作者在谈Profiles, themes以及Skins的同时也对如何构键自己的profile provide作了解释。
本书最棒的一章是有关如何用开源软件NUnit工具来做Test-Drivern开发(TDD),这是本书对NUnit作了唯一一次介绍,但是却是NUnit确实是一个非常重要的工具,它与现代敏捷软件开发的方法论非常的相适。
本书的最后一章关于更深层次的议题的讲述有点像飞行在300,000英尺的城市高空,空中小姐对你细数窗外飞机下的美景。 每一个深层次的议题都被当作单独的一章来讲,如:流、网络、和线程。
总的来说,这是一本非常生动有趣的书,如果你要学习新的东西,那么它能让你感到非常的值,当然,你还得是个有那么一点点经验的ASP.NET开发者,你得知道如何使用ASP2.0的各种新特性,并用一种“企业友好”和“可升级的”的方式写简单的应用程序。
前两章只是告诉非面向对象程序员们如何用C#和VB.NET去编写面向对象程序。但由于缺少一些编程上的细节和恰如其分的例子使得这本书更适合经验丰富的面向对象程序员,任何企图从这本薄薄的只有34页的章节里学习一些基本的面向对象程序设计的人都会感到失望。
余下的章节与作者的期望比较接近,他对如何用代码实现程序接口和n-tier开发的反复讨论正是这本书的亮点之一,这或许就是读者购买这本书的最大理由吧。
作者在书中给出了很多关于代码的新技术,甚至提到一些在ASP2.0中很前沿的前瞻性程序设计。本书大部分都用的是ASP2.0的例子,但是ASP2.0测试版的第二版都还没有发布呢,所以,那些例子的代码在ASP.NET 2.0最终版本发布以后还要作一些相应的修改才能用。虽然我没有发现任何代码运行的时候不稳定,但是我还是希望他们能对代码作一些必要的修改。
这本书有时候用的代码例子是将作者免费的POP论坛程序作为现实世界中的学习例子。他给出了一点代码片段,并用自己的方法作了解释。从软件工程学的观点来说:他把数据层抽象数据到了某一程度只用代码去实现接口问题。这是非常棒的主意,比如,它允许你加上一个完全不同的底层联结用Access代替SQL Server。
他从商业对象层级的角度解释了数据接入分离的交换原理,他对这些的解释非常有趣而且和现实世界中的程序设计又非常贴近。
他对一些有操作性的代码阐述的非常详细,这远比一些泛泛而谈的书来好的多。他对一些高级概念给出了自己的解释,如:HTTP主控端、HTTP模块以及服务器控制;但是他对Web服务器相关内容看起来似乎有点让人难以接受,因为里面连基于服务方向的建构这些内容只字未提。
对ASP2.0中会员和安全这些功能的特性作了很好的解释,作者甚至讲述了如何构键自己membership provider!更让人高兴的是,作者在谈Profiles, themes以及Skins的同时也对如何构键自己的profile provide作了解释。
本书最棒的一章是有关如何用开源软件NUnit工具来做Test-Drivern开发(TDD),这是本书对NUnit作了唯一一次介绍,但是却是NUnit确实是一个非常重要的工具,它与现代敏捷软件开发的方法论非常的相适。
本书的最后一章关于更深层次的议题的讲述有点像飞行在300,000英尺的城市高空,空中小姐对你细数窗外飞机下的美景。 每一个深层次的议题都被当作单独的一章来讲,如:流、网络、和线程。
总的来说,这是一本非常生动有趣的书,如果你要学习新的东西,那么它能让你感到非常的值,当然,你还得是个有那么一点点经验的ASP.NET开发者,你得知道如何使用ASP2.0的各种新特性,并用一种“企业友好”和“可升级的”的方式写简单的应用程序。
| 我要写评论 |
| 查看所有评论交流(共40条) |








点击看大图




加载中...
