C++品味.NET经典[转载]

 

                                                                              
李洪根/文

      在涉了老的待后,我们总算盼了《Microsoft
.NET框架程序设计(修订版)》一开。原书由环球资深的技艺作家Jeffrey
Richter先生所展示。在上年《程序员》的.NET好书榜中,我们都援引了此开的英文版。一直以来,能透彻地分析.NET框架平台系统和底技术之图书了了点滴。毫无疑问,《 Microsoft
.NET框架程序设计(修订版) 》给国内.NET开发人员带来了初的盼望,本书对.NET平台展开了宏观剖析,语言流畅、翻译准确,不愧为.NET领域的经典图书。

      说及者开,就容我稍费笔墨对Richter先生做一样大概的介绍。Jeffrey
Richter先生是Windows/.NET程序设计领域有着盛誉的艺作家,名刊MSDN杂志的.NET专栏作者。其传奇著作《Windows
高级编程指南》(Windows
95:A Developer’s Guide,Advanced
Windows)、《Windows核心编程》(Programming
Applications for Microsoft Windows)早已成 Windows
程序设计领域事实上的圣经。他13春秋开始沉溺于编程,23寒暑打Drexel
University获得计算机学位后,就耕耘在Windows开发领域。他的Windows著作培育了几代软件开发设计人员。

      本书译者是举行技术出身的李建忠先生。在译序当中,李建忠就告读者准备.NET框架
SDK和片常用工具,并吃读者提了有些指导性建议。他当各个段的关键技术点都加以发译注,显示了翻译本人深厚的技术基础,同时也于本书增值不少!更要紧的凡外对Jeffrey所作的不当为译注的样式进行了拨乱反正,作为读者了解原书的机要补充。在有些技术细节上,李建忠亲自对代码进行调节,如在第六回“通用对象操作”,李建忠还写Equals和GetHashCode方法的一个,检验编译器是否出现警示信息。读者可以小心每一样回的译注,就会发觉,所有的这些还是未技术出身的翻译人员无法做到的!由于李建忠的技能基础和言语领悟力,本书算是为Jeff交了一如既往客圆满的答卷,也让读者及了扳平客圆满的答卷!

      在读《 Microsoft
.NET框架程序设计(修订版C++) 》时,给我的完好感觉是:剖析透彻、条理清晰、每一样页都有收获,每一个技术点都值得咱们去解与尝试。译文流畅、读书简直是一律种植享受。书被的情节要是涉及.NET平台核心技术,如.NET框架原理、程序集、元数据、值类型/引用类型等核心技术进行精细的教学,而且撰稿人对开发被的类问题与了指导。比如:讲解.NET框架原理时,深入解析了咱们利用C#编译器(Csc.exe)生成托管模块(需要通用语言运行时CLR才能够实行之PE文件),托管EXE如何启动CLR等做了详细的分解。

      给自家养出深刻印象的是该书第十九段。这同章节可说凡是.NET技术的答辩精髓所在:.NET自动内存管理(即垃圾回收)。以前,.NET框架帮助文档阐述得不是雅详细。本书中笔者用平实的语言阐述了垃圾堆收集之体制。比如我们所以New关键字实例化一个靶,中间语言(IL)指令newobj创建新的目标,在托管堆中吗目标分配内存。垃圾收集器检查托管堆中是否出不再以的靶子,进行内存回收。这同多级之反驳,通过翻译的发表,把一切过程表述得清晰明了,而且配起图片进行详尽的征!

      书中Richter还写了大气C#代码,结合.NET框架深入进行分析,比如值类型的“装箱和拆箱”,分析了汪洋的代码,以及这些代码执行多少次装箱和拆箱操作。我思,本书用这样成功,是暨Richter十几年来C++技术背景分不起来的。尤其是Richter熟悉Windows底层,经常用反汇编工具(Ildasm.exe),这对理解.NET框架起至了大充分作用。

      看了这开,会对.NET框架会发一个完善的接头,可以窥见微软.NET领域的技术精髓。你晤面以为Visual
Studio.NET只是一个尖端的源代码编辑工具而已,更多之底色技术是由.NET框架来完成的。你得分析到程序的根,可以缓解程序编制、调试、部署着之浩大题目。不妨下充斥该书的有些章,细细品味。

      引用本书译序中的同样段落话作本文的尾声:“相信对于.NET领域应迅速会发平等的传教——.NET程序员将会因为是开要分为两近似,一近似是朗诵了《Applied
Microsoft.NET Framework Programming》的,一接近是从未读了《Applied
Microsoft.NET Framework Programming》的。”