为什么说这些功夫是“程序员的自我修养”(转)

不可不读,经常要读

原文链接:http://www.douban.com/review/2763493/

今天花了一天的时间从头到尾翻了一遍, 跳过了那些有X86汇编的部分, 和分析C++ CRT中解构析构的部分,其他的都读了一遍。

读完之后唯一的感觉就是: 此书非读不可, 而且要经常读。

毫无疑问作者对于链接, 装载和库这三个方面是有深刻的认识的, 于深度和广度都无可挑剔, 而且组织文字的能力也属上乘, 虽然我之前看过相当多相关的spec, 但是读一本书可以这么快, 不能不说作者文字功底确实不错。

不过我觉得, 如果能把dwarf的信息加进去就好了, 再加上一些讲调试的章节, 改为链接,装载,库与调试, 就完美了。

调试部分不是讲技巧, 这方面已经有几本好书了, 可以侧重调试信息的解析, 调试器的工作原理, 以及前面三者对调试的支撑, 互相之间协作等等。

作者在书中一直提及一个观点: 计算机科学领域的任何问题, 都可以通过添加一个中间层来解决。

在书的很多章节都反复引用并论证了这个观点, 我也觉得非常有道理, 不过事物总是两方面的, 每添加一个中间层都会带来很多额外的负担, 比如验证中间层工作是否正确工作, 规范外部的调用接口, 这都是很大的工作量, 另外还会在调试的时候带来相当多的麻烦, 比如滥用COM

还有一个缺点就是, 引入新的中间层, 会让被隔离在外面的人失去对底层的了解, 最终会体现在调试上面, 或者对接口的误用, 所谓难以两全吧

这个方法似乎也不局限于计算机领域, 这几天在看书的时候, 我会随手做很多概要, 把认为重要的东西都作为条目写下来, 然后抽一段时间做整理。以前总是阅读-收藏/保存, 然后凭记忆再做整理, 或者干脆不整理, 回头总是发现似懂非懂, 要去找出处的时候又遍寻而不得, 很浪费时间。

这应该也是个中间层, 把零散的资料做初步的整理, 然后再集中的消化, 效果还是不错的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值