如果你能回到过去,告诉自己在开发人员职业生涯的开始读一本书,你会读哪本书?
我希望这份清单是多样的,涵盖范围很广。
搜索:使用右上角的搜索框。要搜索当前问题的答案,使用inquestion:this。例如:
inquestion:this "Code Complete"
如果你能回到过去,告诉自己在开发人员职业生涯的开始读一本书,你会读哪本书?
我希望这份清单是多样的,涵盖范围很广。
搜索:使用右上角的搜索框。要搜索当前问题的答案,使用inquestion:this。例如:
inquestion:this "Code Complete"
当前回答
Robert Sedgewick的算法书。应用程序开发人员的必读。
有多种版本(C, c++, Java)
http://www.cs.princeton.edu/~rs/
其他回答
所有关于……书。
布鲁斯·埃克尔是教育学的天才! 在c++中很容易理解多态性的实现。它包含了所有你应该知道的关于c++的知识,基本的和高级的概念。比Stroustrup的好多了。 我也跟着他学了Java。
最后但同样重要的是:
c++版本是免费的!
http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html
系统滑稽:系统如何工作,特别是它们如何失败。便宜地使用它。但是,在你参与过一些失败的项目之前,你可能不会体会到其中的幽默。
书之美在于版权年。
也许书中最深刻的“法则”是:
基本失效模式定理(F.F.T.):复杂系统通常以失效模式运行。
它的思想是,在任何给定的软件中都有失败的部分,这些部分被其他部分的失败或其他部分的验证所掩盖。看看现实世界中Therac-25辐射机的例子,它的软件缺陷被硬件故障保险掩盖了。当硬件故障保护被移除后,多年来一直未被检测到的软件竞争状态导致机器杀死了3个人。
对我影响最大的编程书籍是Allen Holub的《Enough Rope to Shoot Yourself in The Foot》。
书的封面http://ecx.images-amazon.com/images/I/71AE90J735L._SL500_AA240_.gif
哦,那是多久以前的事了。
《UNIX环境下的高级编程》作者:W. Richard Stevens。
好吧,所以问题不是“最好的编程书是什么”,而是“如果你能告诉自己在职业生涯的开始应该读什么”……
可能是“On Lisp”和SICP,再加上一个CLRS或Udi Manber的“算法:一种创造性的方法”。
算法介绍由Udi Manber http://vig-fp.prenhall.com/bigcovers/0201120372.jpg
前两个课程将教授许多编程技术、模式,并真正打开一个人的思维,发挥他/她自己的创造力;另外两个是不同的。它们更理论化,但也非常重要,专注于设计正确有效的算法(需要大量的数学知识)。
当“优秀编程书籍”的主题出现时,我看到很多人推荐前三本书,但最后一本(Manber写的)是一本很棒的书,但很少有人知道它。真可惜!Manber专注于算法的增量发展,通过使用归纳法进行定理证明。