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

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

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

inquestion:this "Code Complete"

当前回答

代码完成是第一选择,但我也会引用Gang of Four的设计模式和Craig Larman的应用UML和模式。

克里斯托弗·亚历山大(Christopher Alexander)的《永恒的建筑方式》(The Timeless Way of Building)是另一个伟大的作品。尽管它是关于架构的,但它包含在我已经读过的许多优秀编程书籍的参考书目中。

另一本,我从中学到很多新东西,是克里夫顿·诺克的《数据访问模式》。

其他回答

我已经有一段时间了,所以我发现的大多数有影响力的书在今天并不一定适用。我相信理解你所开发的平台(包括硬件和操作系统)是非常重要的。我也认为从别人的错误中学习很重要。所以我想推荐两本书:

计算灾难和寻找愚蠢:二十多年的高科技营销灾难

Brian W. Kernighan和P. J. Plauger的《软件工具》

它对我编写软件的方式产生了深远的影响。

在Windows下进行图形编程很难出错。

一本书的影响力通常取决于读者,以及他们读这本书时处于职业生涯的哪个阶段。我必须为Head First设计模式欢呼。伟大的书和非常有创意的写作方式应该被用作其他技术书籍作者的例子。也就是说,它是为了促进学习和内化概念而编写的。

头部优先设计模式http://ecx.images-amazon.com/images/I/51LSqrgoT1L._SS500_.jpg

Kernighan和Plauger的编程风格元素。 它说明了噱头-聪明和优雅-聪明之间的区别。