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

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

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

inquestion:this "Code Complete"

当前回答

这本书可能不算“开发书籍”,但我还是要把它放在这里:Stephen Levy的《黑客》。我发现它体现了编程的情感方面。

其他回答

问题是,“哪本书真正影响了您作为开发人员的工作方式?”毫无疑问,Jeff Prosise的《用MFC编程Windows》是对我作为开发人员的工作方式影响最大的一本书。它没有教会我“编程”的基础知识,但它为我和成千上万的其他开发人员打开了Windows平台开发的世界。

在MFC开发之前,我曾经用“Petzold风格”写过一些Windows代码。我很快就决定,作为开发者,我们不值得在Windows平台上费心。当Prosise出版了他的MFC书籍时,我意识到(以及其他成千上万的非windows程序员)我可以创建一个简单易用的界面,用户不仅可以理解,而且实际上喜欢使用。我如饥似渴地读着这本书,在里面做了很多笔记,翻了很多角,最后我买了第二本。

Prosise,杰夫。用MFC第二版编程Windows。 微软出版社1999 ISBN: 1-57231-695-0

Ian Craig的《面向对象编程语言的解释》

因为它向我展示了OO比标准的c++ /Java习惯用法要多得多

我写的是“实例测试驱动开发”

Donald Knuth写的《Literate Programming》,这是一本关于代码结构的好书。

实际上,有两本书比较突出。第一个是“代码完成”。尽管已经过时了,这仍然是一本非常有用的书,关于过早优化的危险的章节本身就值回这本书的价格。

第二本书是《日常事物的心理学》(我想现在叫做《日常事物的设计》),这本书改变了我在设计应用程序时对用户界面的思考方式。这让我更加关注用户。