WPF图书大战

目前市面上有4本引人注目的WPF图书,

 

在Windows平台上编过程的,大概没人不知道Charles Petzold的大名,知道Adam Nathan的大概不多,但他的前一本书《.NET and COM》被奉为相关主题的权威著作。Chris Anderson是WPF的架构师,而Chris Sells在技术界也广为人知,最新著作包括《Windows Forms 2.0 Programming (第二版)》和《ATL Internals》。

 今年四月份,《Coding Horror》博客的作者Jeff Atwood以《How Not To Write a Technical Book(不应该这样写技术图书)》为名,比较了前两本图书,引起轩然大波,不少重量级的人物,包括作者本人,都加入了辩论。

Jeff Atwood认为,Nathan的书是绝对的赢家,理由大概翻译如下:

“。。。。
(Nathan的书)全书满是图表,屏幕截图和插图,辅助说明代码的涵义

书中文字间穿插了许多有用的彩色侧栏,例如深究(digging deeper),常见问题(FAQ),和警告(warning)等。

代码/标识片断较短,比较容易消化,而不是长篇累牍的文字占上好几页

慷慨使用了大量的列表,表格,副标题等文本元素,提供了极好的可扫描性(scannability)

有一种幽默感,不令人讨厌或倒胃口

全书全彩印刷

Nathan的书是出色的佳作,读上去象博客,可以跟网上能找到的任何东西一较长短。而相比之下,Petzold的书是没完没了的文字和冗长的代码的灰色的海洋。书中图表寥寥无几,每次遇上个图表,都会让人喜出望外。还有,该书还将代码和标识人工分开,前半本书都是C#代码,直到下半本书,你才能看到任何XAML标识,尽管XAML是WPF中最重要的新特性之一,且是开发人员最不熟悉的特性。

我猜这样老派做法是Petzold的典型风格。从一个认为Visual Studio腐蚀了软件开发人员的脑子的人那里,你还能期待什么呢? 任何人打开过这2本书的话,其手法之不同,一目了然。一本书看上去令人注目,充满乐趣,引人入胜,另一本书看上去很痛苦的,教科书式的苦差,相当于用记事本编写代码一样。Petzold是个优秀的作者,但写作本身并不能弥补他的书布局设计上的严重不足。

真是很可惜,我非常喜欢Petzold前面一本书《代码(Code)》,充满了美妙的插图,整个就是对个人计算机的情书。虽然我非常尊敬Petzold,你应该避开他的WPF一书,而是买Nathan的那本书,你会喜欢它的。出版商注意了,如果技术书都象这本书一样,我肯定还会买许许多多本这样的书的。

。。。”

Charles Petzold对这样的批评并不以为然,甚至说出了气话:“Prose is dead. PowerPoint has won (传统写作方式已经死了,PowerPoint赢了)”。

Don Box则指出作为图书的“消费者”,如果一门技术仅仅是为了完成手头的工作,那么他是绝对不会买什么书的。他大概会使用Reflector钻研一下相关技术,也会在网上搜寻一下,花上半个小时看一下搜索结果。对这类任务,他大概会一边做一边学习如何使用相关技术。

但如果一门技术与他要打造的东西息息相关,那么他会购买很多相关的图书,认为在将来总会从其中得到收获。

那么他会选择什么样的图书呢? 他会阅读相关主题最简短的书,他的理由是,1,他没时间。2,他发现如果一本书长到千页,很多时候是这些书的作者没有略去不相关的细节,或者包含了太多非中心的主题。3,一本简短的书反应出书的作者对相关技术做了去粗取精的工作,书中内容往往切中要害,极富深知灼见。

在随后的一个贴子《技术书还是以内容为主,对么?(Content is Still King, Right? Right? (Please?))》里Charles Petzold作了解释,主要对Jeff Atwood的技术图书的标准不以为然,认为不应该以颜色论短长,而应该用具体内容作为标准。

Don Box为后两本书做了同样的序,他说,“This book has taught me a whole lot more. Now that it's all shipped, let the light blinking begin!” Chris Anderson一书的另一个序作者是Chris Sells,Chris Sells一书的另一个序作者则是Chris Anderson,既是好友,又是竞争者,是多么美妙的事!

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值