如果你能回到过去,告诉自己在开发人员职业生涯的开始读一本书,你会读哪本书?

我希望这份清单是多样的,涵盖范围很广。

搜索:使用右上角的搜索框。要搜索当前问题的答案,使用inquestion:this。例如:

inquestion:this "Code Complete"

当前回答

除了其他人的建议,我建议你要么买一本《SICP》,要么在网上阅读。这是我读过的为数不多的几本书之一,我觉得它极大地提高了我在软件设计方面的技能,特别是在创建良好的抽象层方面。

有一本与编程没有直接关系,但也是程序员(IMO)的好书是《具体数学》(Concrete Mathematics)。其中的大部分主题(如果不是全部的话)对程序员来说都是有用的,而且它比我迄今为止读过的任何其他数学书籍都能更好地解释问题。

其他回答

重构

企业应用程序体系结构模式

近年来,它是由“Nicolai M. Josuttis”撰写的“c++标准库”。这是我的圣经。

可选文字 http://ecx.images-amazon.com/images/I/51BT5SKXTCL._SL500_AA240_.jpg

除了它们在我书架上的排列顺序外,没有特别的顺序:

实用的程序员 福勒的rafacoring 有效地使用Feathers的遗留代码。这实际上是重构的一个伙伴卷。 Fowler提炼的UML。它的其他优点之一是简洁。 Steve Maguire编写的调试开发过程 设计模式(又名“四人组”)由Gamma等人

在过去的6个月里,用代码做梦可能是影响最深远的。

这不是一本严格意义上的开发书籍,我相信我在其他地方提到过它,但我真的认为所有开发人员都应该读这本书,从php到Java再到汇编开发人员。

Code

它汇集了计算机的底层原理,为什么不应该浪费内存,以及计算史上一些更有趣的部分。这是对计算机及其内容的介绍。它让我对低级编程产生了极大的热情,并且比其他任何计算机都更能帮助我理解指针和内存。