对《.NET大局观》(第2版)的褒奖已经够多了,况且那些专家的推荐说服力更强,只所以在2007年的第三天决定还是要写一些关于对这本书的看法,主要还是出于一种感恩与总结的心态。
读《.NET大局观》的感受
在武汉之行的最后一天,博文的朋友召开“乐读书”的讨论会。大家对2006年对自己有感触的书拿出来分享,各讲心得体会。在我的分享中,我把《.NET大局观》列为“提升我信心的一本书”。为什么这样说呢?虽然从业五年有余,技术媒体经验也有两年多,也做过《MSDN开发精选》的主要组稿人,可是对.NET这样一个庞然大物依然充满恐惧感。在《MSDN开发精选》这本杂志停刊后的很长一段时间里,自己也没有从“恐惧”中走出,比较担心的也是与作者交流对于.NET的看法。当我从同事那儿看到这本书时,几乎毫不犹豫地向出版社索要了一本。而拿到后的心情也是着实激动的,在清华上课时也抱着此书,老师在上面讲我在底下自欣赏,从清华回家的路上,借着昏黄的路灯依然与书相乐,那感觉,堪比大吃武汉“峰峰虾球”。
在武汉之行的最后一天,博文的朋友召开“乐读书”的讨论会。大家对2006年对自己有感触的书拿出来分享,各讲心得体会。在我的分享中,我把《.NET大局观》列为“提升我信心的一本书”。为什么这样说呢?虽然从业五年有余,技术媒体经验也有两年多,也做过《MSDN开发精选》的主要组稿人,可是对.NET这样一个庞然大物依然充满恐惧感。在《MSDN开发精选》这本杂志停刊后的很长一段时间里,自己也没有从“恐惧”中走出,比较担心的也是与作者交流对于.NET的看法。当我从同事那儿看到这本书时,几乎毫不犹豫地向出版社索要了一本。而拿到后的心情也是着实激动的,在清华上课时也抱着此书,老师在上面讲我在底下自欣赏,从清华回家的路上,借着昏黄的路灯依然与书相乐,那感觉,堪比大吃武汉“峰峰虾球”。
《.NET大局观》里究竟讲了什么?
.NET的历史,该领域里易混淆的概念,前瞻性的话题,基本都包含在内,对于一个要了解.NET整体架构的人,简直再适合不过。比如我一直对为什么在.NET平台上MSIL(Microsoft Intermediate Language)的重要性迷糊。在看到第49页的“为什么需要MSIL”一文时,David Chappel一句话点题——“被装载至内存时,MSIL代码可进行类型安全校验,这使得某些错误及很大一部分攻击都不再具有可能性,从而成就了更好的安全性和更高的可靠性。”再比如在社区里经常讨论的话题,是学习.NET还是Java?因为.NET对Java也是支持的,所以不知如何辨析.NET和Java的关系。而在第78页的“观点:Java在.NET框架中的处境如何”一文中,David也旗帜鲜明地表示“微软对Java的支持,很明显是为了使代码和开发人员迁移到.NET框架,而非帮助开发人员使用Java创建出一流的新软件。战线已经很明确:.NET对决Java。”再比如像Java或者.NET这样的大东西,我们在学习时如何把握深浅度的问题,David解释的也很有意思,“幸运的是,你无需学习整座大山(注:我认为这里用大山比用山头好一些)。除非你有大量空闲时间,并且有教徒般的浓烈兴趣,否则你不可能理解这个类库提供的所有类型。任何工作于.NET世界的开发人员,首先都得决定,这座软件大山的哪一个部分才是他绝对必要理解的,并应该决定哪一部分才是他真正感兴趣的。”类似于这样的经典“名句”比比皆是,尤其是在“观点”篇章里,这些部分也是我所最钟爱的。
.NET的历史,该领域里易混淆的概念,前瞻性的话题,基本都包含在内,对于一个要了解.NET整体架构的人,简直再适合不过。比如我一直对为什么在.NET平台上MSIL(Microsoft Intermediate Language)的重要性迷糊。在看到第49页的“为什么需要MSIL”一文时,David Chappel一句话点题——“被装载至内存时,MSIL代码可进行类型安全校验,这使得某些错误及很大一部分攻击都不再具有可能性,从而成就了更好的安全性和更高的可靠性。”再比如在社区里经常讨论的话题,是学习.NET还是Java?因为.NET对Java也是支持的,所以不知如何辨析.NET和Java的关系。而在第78页的“观点:Java在.NET框架中的处境如何”一文中,David也旗帜鲜明地表示“微软对Java的支持,很明显是为了使代码和开发人员迁移到.NET框架,而非帮助开发人员使用Java创建出一流的新软件。战线已经很明确:.NET对决Java。”再比如像Java或者.NET这样的大东西,我们在学习时如何把握深浅度的问题,David解释的也很有意思,“幸运的是,你无需学习整座大山(注:我认为这里用大山比用山头好一些)。除非你有大量空闲时间,并且有教徒般的浓烈兴趣,否则你不可能理解这个类库提供的所有类型。任何工作于.NET世界的开发人员,首先都得决定,这座软件大山的哪一个部分才是他绝对必要理解的,并应该决定哪一部分才是他真正感兴趣的。”类似于这样的经典“名句”比比皆是,尤其是在“观点”篇章里,这些部分也是我所最钟爱的。
作者/译者是什么样的人?
市面上讲解“How”的书已经够了,而能够清晰明了地告诉你“Why”的书却是难得。因为这样的书对于作者的要求是非常高的,如果你对此物没有充分的了解与把握,没有经验过此物学习过程中的悲观喜乐,要写出感动人的文章可以说难上加难。本书的作者David Chappel显然是能够胜任这一重任的,他撰写的一些软件技术相关书籍,已经被翻译成多种语言,有些还没像MIT这样的知名计算机学府用作教材。作为一个咨询师,David曾帮助HP、IBM、微软、斯坦福大学等公司采纳新技术等等。比较有意思的是,他还曾以演员的身份获得过Peabodyaward奖。可谓是多才多艺的一个家伙!
市面上讲解“How”的书已经够了,而能够清晰明了地告诉你“Why”的书却是难得。因为这样的书对于作者的要求是非常高的,如果你对此物没有充分的了解与把握,没有经验过此物学习过程中的悲观喜乐,要写出感动人的文章可以说难上加难。本书的作者David Chappel显然是能够胜任这一重任的,他撰写的一些软件技术相关书籍,已经被翻译成多种语言,有些还没像MIT这样的知名计算机学府用作教材。作为一个咨询师,David曾帮助HP、IBM、微软、斯坦福大学等公司采纳新技术等等。比较有意思的是,他还曾以演员的身份获得过Peabodyaward奖。可谓是多才多艺的一个家伙!
本书的译者是荣耀先生,相信不需要我介绍大家也都久闻其名了,特别是对于学习C++的朋友们,像《Windows Forms程序设计》、《C++必知必会》及《C++ Templates全览》等书都出自于他的翻译之手。本书这所以能够简洁易懂,应该感谢荣耀老师的妙笔!现在荣耀先生是南京师范大学教师,南航的计算机科学博士生。
结语
好了,基本的介绍是这些。希望想学习.NET,在学习.NET的朋友都能够早些接触这本书,享受醍醐灌顶的美妙感觉。另外需要再提一句的是《.NET大局观》只是David Chappel所编丛书中的其中一本,目前已经出版的《Understanding SOA with Web Services中文版》和它出于同一系列,其实按照我的理解,这本书不如直接叫《SOA大局观》的好,多简单易懂。目前对SOA这本书我正在研读,过些日子再与大家分享。
好了,基本的介绍是这些。希望想学习.NET,在学习.NET的朋友都能够早些接触这本书,享受醍醐灌顶的美妙感觉。另外需要再提一句的是《.NET大局观》只是David Chappel所编丛书中的其中一本,目前已经出版的《Understanding SOA with Web Services中文版》和它出于同一系列,其实按照我的理解,这本书不如直接叫《SOA大局观》的好,多简单易懂。目前对SOA这本书我正在研读,过些日子再与大家分享。
再啰嗦一句,这本书的体例对于中国计算机出版界的朋友们来说,也是非常值得学习的。据内部人士透露,这本书的体例是完全翻版于原版,对出版社这一大胆之作,我绝对支持——好的东西,就要大胆地拿过来!!