如果你能回到过去,告诉自己在开发人员职业生涯的开始读一本书,你会读哪本书?
我希望这份清单是多样的,涵盖范围很广。
搜索:使用右上角的搜索框。要搜索当前问题的答案,使用inquestion:this。例如:
inquestion:this "Code Complete"
如果你能回到过去,告诉自己在开发人员职业生涯的开始读一本书,你会读哪本书?
我希望这份清单是多样的,涵盖范围很广。
搜索:使用右上角的搜索框。要搜索当前问题的答案,使用inquestion:this。例如:
inquestion:this "Code Complete"
当前回答
如果你在Unix/Linux/MacOS等环境下工作,你必须阅读已故W Richard Stevens的《Unix环境下的高级编程》(也被称为APUE)。如果你不知道文件描述符是如何工作的,或者什么是会话,或者当你守护自己的时候你应该做的所有事情(承认吧,你不知道),那么这本书会告诉你。
之后你会觉得有点不专业,但是如果你想在Unix环境下成为一个专业的程序员(任何语言),你需要阅读这篇文章。
其他回答
Craig Larman的《应用UML和模式》。虽然四人组的《设计模式》这本书很有启发性,但我发现直到在编程课上偶然看到Larman的书,我才“明白”如何使用设计模式。
几年前,Bruce Eckel的《Thinking in c++》教会了我很多关于c++的知识,也教会了我把一个问题隔离到一个小“沙盒”中进行研究/分析的重要性。这个技巧极大地影响了我的职业生涯,经常帮助我解决自己和他人的问题。
最近,我参考了以Java方式编写的Thinking in Java。不知何故,这种风格不仅仅是简单的“例子”,而是深刻地抓住了问题的核心。
我是如此感激,以至于我几乎会买Eckel的任何东西,看都不看。
弗雷德·布鲁克斯的《神秘的人月》 http://en.wikipedia.org/wiki/The_Mythical_Man-Month
这并不是对这个问题的直接回答,因为我觉得上面已经回答过了,然而,有一本书对我的编码方式产生了明显的影响,那就是《代码阅读》第1卷:开源视角。
可选文字 http://g.bookpool.com/covers/405/0201799405_140_30O.gif
代码工艺