《.NET大局观》前言 编写优质软件并无不二法门,亦不存在十全十美的开发平台。然而创造平台的人们仍然为这个遥不可及的理想奋斗,持续地为我们带来新的软件建构技术。除了极少数例外,每一次变革都比它所取代的东西更好。无一例外的是,每一次创新都使我们脑袋里的知识多少有些过时。是的,和软件互动的根本之道就在于与时俱进、随机应变。 .NET是迄今微软(也可能是任何厂商)向技术客户展示的最大一套新技术。它所打造的巨大革新几乎提升了开发人员生活的每一方面,但此同时,它也带来了大量需要理解的新技术。本书的目标就是帮助你迁移到这个巨大新世界中。 本书为谁而写 .NET规模庞大。肯定会有许多书籍提供此一巨大的“技术水晶”的每一刻面的详尽分析,也会有大量书籍提供核心的、易于动手实践的信息。本书不属此类。我坚信从整体上理解 .NET将是深入钻研其任何面向之专门技术细节的基本要素。因此,我的目标是提供一个 .NET主体技术的广泛概观。由于这一软件族系及其提供的服务的最伟大力量之一就是它们可以彼此开拓,因此本书也试图展示这些技术如何结合在一起。 如果你正在寻找关于 .NET整体大描绘的介绍和观点,本书正是为你而写。无论你是一位刚开始接触 .NET的开发人员,或是一位需要对这些技术作出决策的技术管理者,亦或是第一次瞧见这些观念的学生,本书都将是有益的指南。这儿有足够的、可彻底满足许多人的信息细节。上述以外的其他人可以将本书当作了解更多细节知识的“垫脚石”。无论如何,我希望这本书的组织方式和涵盖内容,都可以使你在理解并掌握这一巨量技术时省些力气。 事实和观点 要掌握一种新技术,就非得弄清楚其基本原理不可。它的主要构成是什么?它们如何运作?如何彼此结合?但如果要真正透彻理解一种技术,光是这些远远不够。你不但要弄清楚事情如何运作,还要明白它们为何至关重要,它们与过去的技术相比又如何,下一步可能会发生些什么。 本书提供了所有这一切。正文中我努力保持严肃的教学形式,完全集中于描述 .NET是什么。在“分析文块”里头,我会从不同方面给出一些关于这种技术的概括性看法。每一个“分析文块”里头的分析都表达了我对于“为什么事情会是这个样子,将来又会如何”的观点。透过这种将客观事实和主观看法分开描述的方式,我希望能够让你比较轻易地区分两者;叙述事实的同时我将表达个人观点,我希望本书因此得以更有趣味、更富启迪性。 致谢 如果你曾经写过书籍,你就会明白你从别人那儿得到了多少帮助。如果你没有写书经历,那好,相信我,没有以下这些人的协助,本书将失色不少。我想要向以下人士致以由衷的谢意:Bob Beauchemin, Keith Brown, Cori Day, Ted Demopoulos, Bill Estrem, Jeannine Gailey, Kit George, Greg Hack, Rob Howard, Maxim Loukianov, Juval Löwy, Peter McKiernan, Yahya H. Mirza, John D. Mitchell, Christophe Nassare, Eric Newcomer, David Sceppa, Aaron Skonnard 和Mike Woodring。他(她)们阅读了本书草稿,给我宝贵的意见,并且时常纠正书中存在的这样或那样的问题。我尤其要感谢Richard Monson-Haefel,他是一位卓尔不群的技术专家和作家,他阅读了每一章,并做出许多有见地的评论。 我所参与的许多 .NET研讨会的众多出席者也为本书品质做出了不小贡献。通过我对 .NET技术的讲解,他们帮我判断哪一种途径对于理解 .NET最富成效;通过向我提出的深刻问题,他们激发了我许多灵感,使我写出散布于本书各处的许多“分析文块”。 Addison-Wesley的许多人也值得我深表谢意。如果没有Kristin Weinberger,Independent Technology Guide系列书籍和本书都不会存在;如果没有Stephane Thomas,我可能永远都无法完成这个项目;如果没有Cindy Kogut,我的文字将明显失色;如果没有Katie Noyes,就不会有如此漂亮的封面。 我还要感谢我的好友Jim和Judy Moffitt,在我最需要的时候,他们亲手送来了成包的巧克力夹心饼干。最后,我要把这一切都归功于Diana Catignani 没有她,我的生命贫瘠无比。 David Chappell |
|