本书描述了计算机编程更具魅力的一面:在可靠的工程之外,在洞察力和创造力范围内结晶而出的编程珠玑。正如自然界中的珍珠来自于磨砺牡蛎的细沙一样,这些编程珠玑来自于磨砺程序员的实际问题。这也是我之前就对实践很是看中的原因,只看不用的知识,永远不属于我,以后我也会越来越注重实践。书中的程序都很有趣,传授了重要的编程技巧和基本的设计原理。
本书大部分内容最初发表在《ACM通讯》中我主持的“编程珠玑”专栏。这些内容经过汇总和修订,在1986年结集出版,成为本书的第1版。第1版的13篇文章中,有12篇都在本版中做了大幅修订;此外,本版还补充了3篇新的内容。 阅读本书所需的唯一背景知识就是某种高级语言的编程经验。书中偶尔会出现一些高级技术(如C++中的模板等),对此不熟悉的读者可以跳过这些内容,基本上不影响阅读。所以这本书还是很适合我这种水平的阅读的,多读几本好书真的能避免很多弯路,这是我读书过程中感受最大的地方。
关于书中的很多知识,我之前是没有意识到的。编程的好处以及考察的能力方面,在以前的学习里面,我对代码都是靠记忆,甚至背诵。这一点在阅读这本书的时候我已经意识到了,应该先理解,再适当的记忆,才是学习的好办法。