温故知新的经典--书评《Programming C# 》中文版第4版
《Programming C# 》中文版第4版终于到手了。
这是一本迟来的经典书,本书的英文版早在2005年2月就已经出版了,隔了两年多了,中文版才在国内上市。在2006年的时候,看英文版的时候,我就喜欢这本书了(尽管我是在字典的帮助下一点点看完的)。不过,毕竟有语言的隔膜,总期望有中文版,可以畅快淋漓地看。好事多磨吧,隔了一年多才实现这个愿望。对于一个程序员来说,英文的阅读能力是多么重要
这是一本迟来的经典书,本书的英文版早在2005年2月就已经出版了,隔了两年多了,中文版才在国内上市。在2006年的时候,看英文版的时候,我就喜欢这本书了(尽管我是在字典的帮助下一点点看完的)。不过,毕竟有语言的隔膜,总期望有中文版,可以畅快淋漓地看。好事多磨吧,隔了一年多才实现这个愿望。对于一个程序员来说,英文的阅读能力是多么重要
,国外最新的图书、资料的资讯都可以及时的获取,如果依赖中文版的话,就只能“落后”不少,国内的出版业的步伐恐怕要加快了,当然这是题外话了。
一个小插曲,那天我在看书的时候,老婆看见说,你也看“菜鸟”的书呀,我一愣,我老婆可是一点也不懂程序哟,她居然知道这本书适合菜鸟,嘿嘿,原来老婆是看到书的封面印着一张“冠鹤”的图片,给我开了个玩笑,说这是只“菜鸟”,哈哈哈。也许是巧合(或许这正是O'reilly当初的暗喻吧),本书确实非常适合c#初学者,甚至我觉得是所有入门的c#书中最好的,比《C#入门经典》、《C# Primer》(个人觉得《C# Primer》算Stanley Lippman比较失败的作品,远不及《C++ Primer》深度)等都要优秀。对于c#高手来说,此书也可以做到温故知新,查漏补缺。
这是一本对“新手”“高手”皆宜的书,有什么特点呢,下面是我看后的心得:
1、书的结构和章节安排的合理,完全从初学者角度来安排,循序渐进。在简单介绍C#与.NET框架后(这部分对于初学者没必要深入),开始逐步展开,c#的基础知识(什么变量、循环、语句、操作符)、类和对象、结构体等等,涉及c#所有的知识点,非常全面。
2、第四章、第五章可以算本书的比较精华的章节了,对c#这种面向对象的语言,面向对象是不容错过之处,作者在论述的时候浓墨重彩,从基础开始充分讲述了如何通过c#来实现OOP。
3、简洁、细致、易懂、严谨,是Jesse Liberty 写书风格,让人感觉很舒服,对基础细节的关注非常多,甚至到了不厌其烦的程度,告诉你是什么,为什么是这样,“警告”提示你不能怎样,如果看了这样的书,你还不能在c#门语言上有所得,恐怕就没什么书可以帮你了。难怪有人说这本书是面试“必读”。Jesse Liberty写的一系列的书包括经典的《Programming ASP.NET》都是这种风格:清楚的讲述来龙去脉,并告诉你思考和解决方法。同时,提供的代码案例也是非常有针对性,思路明晰,论述和验证相得益彰。
4、非常适合从c/c++、java转向c#的程序员,经过非常舒服而平滑的转换过程,对于有c/c++或java经验的程序员在很短的时间就可以掌握c#的基础要点所在,同时告诉你c#和c/c++/java 的不同点。对于已经掌握c#基础的高手来说,在使用c#的过程中,回头来查查这本书,你会发现也许你曾经的一些概念是错误的,或者是不全面的。
5、翻译的质量中等。刚拿到书时候,看见译者有3个人,不免有些担心,一般来说对于一本书如果译者超过2人的,在风格和内容的把握上就比较难统一了。不过,在看完全书,中文版本基本保持的原书的风貌,虽然在个别词语的翻译上还需要商榷,在翻译上做到了忠实原文,至少我没发现重大的错误。特别的是,中文版的译注,起到了不错的补充作用,翻译
作品,应该是作者和译者的公共创造,译者不是翻译机,除了做到“信”(真实体现原文),还要能在原著的基础上有一些自己的独立思考,中文版的译注就很好的体现这一点,没有一定的技术和实践功底的译者恐怕做不到这一点。
c#语言本身也在不断发展,已经发展到3.0版本了。书的出版总是赶不上语言本身的变化,但无论c#如何变化发展,总是在继承前面版本,根本的基础是稳定的,所以本书原版虽然是2005年初的作品,但仍然是学习c#不可多得的一本好书。
在网上看,Jesse Liberty着手写《Programming C#》 第五版了,那么《Programming C# 》中文版第4版算不算迟来的经典呢?:-)