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

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

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

inquestion:this "Code Complete"

当前回答

对我产生真正影响的第一本书是Tom Swan的Mastering Turbo Assembler。

其他有影响的书有Linus Torvalds和David Diamond的《Just For Fun》,当然还有Andrew Hunt和David Thomas的《The Pragmatic Programmer》。

其他回答

@Peter Coulton——你不是读Knuth,而是研究它。

对我和我的工作来说…纯函数式数据结构非常适合用函数式语言进行思考和开发。

由于上面提到的许多原因,这是在“头部优先设计模式”和“Perl测试:一个开发人员的笔记本”之间摇摆不定,对于任何想要编写可维护代码的Perl程序员来说,它都应该是一本圣经。

下一个():把你的软件开发生涯提升到领导的轨道上 ~迈克尔·c·芬利(作者),本扎Fedák(作者) 链接文本

TCP/IP指南,Charles M. Kozierok著

虽然它被描述为“百科全书式的参考”,但作为一种叙述,它是令人难以置信的可读性。

作者提供了一个非常,非常,非常好的写作,全面的,介绍网络和基础设施的网络。这是所有程序员都应该知道的。

对我来说,这是查尔斯·佩佐德(Charles Petzold)《密码》(Code)的自然续集。如果说“代码”向外行解释了计算机如何工作,那么“TCP/IP指南”解释了计算机如何连接在一起。

如果你给一个12岁的极客一份“代码”和一份“TCP/IP指南”,他们在17岁的时候就能构建出下一个谷歌。

换句话说,如果我能回到过去,告诉自己在我作为开发人员的职业生涯开始时读一本特定的书,这本书(加上代码)就会在我的清单上名列前茅。

再加上上面提到的那些伟大的事情:

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

企业集成模式