此书非读不可——《程序员的自我修养》

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

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

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

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

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

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

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

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

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

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

 

 《程序员的自我修养》完整版

你可能感兴趣的:(工作)