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

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

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

inquestion:this "Code Complete"

当前回答

对我来说,“内存作为C和c++中的编程概念”真的让我看到了内存管理是如何工作的。如果你是一个C或c++开发人员,我认为这是一本必读的书。你会勇敢地学习一些东西,或者记住你可能已经忘记的东西。

http://www.amazon.com/Memory-Programming-Concept-C/dp/0521520436

其他回答

阅读头部优先设计模式,获得比GoF书更容易理解的介绍。我记得每读完一章,我都感觉自己升级了。

Kent Beck关于TDD的例子测试驱动开发。

这是一个非常丰富和有用的汇编,然而,我有点惊讶我没有在作者中遇到Andrew S. Tanenbaum。在我看来,他是最好的计算机科学教授之一,他的天才主要在于他能让计算机科学本科生理解相当难的材料。他的书(《现代操作系统》或《计算机网络》可能听起来耳熟)在我读学士学位时为我提供了计算机科学的坚实基础,我强烈推荐它们。 关于Tanenbaum的其他一些有趣的东西,证明了他的技能不仅仅是教学:一个名为MINIX的操作系统的作者——Linus在实现Linux时从它那里获得了灵感;Amoeba -分布式操作系统;无龟匿名p2p网络。

我想我们可以每隔几周问一次同样的问题,把所有提到“代码完整”或“实用主义程序员”的人都提升一下。

并不是说这有什么问题:-)

几年前,Bruce Eckel的《Thinking in c++》教会了我很多关于c++的知识,也教会了我把一个问题隔离到一个小“沙盒”中进行研究/分析的重要性。这个技巧极大地影响了我的职业生涯,经常帮助我解决自己和他人的问题。

最近,我参考了以Java方式编写的Thinking in Java。不知何故,这种风格不仅仅是简单的“例子”,而是深刻地抓住了问题的核心。

我是如此感激,以至于我几乎会买Eckel的任何东西,看都不看。

Eric Evans的领域驱动设计