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

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

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

inquestion:this "Code Complete"

当前回答

系统滑稽:系统如何工作,特别是它们如何失败。便宜地使用它。但是,在你参与过一些失败的项目之前,你可能不会体会到其中的幽默。

书之美在于版权年。

也许书中最深刻的“法则”是:

基本失效模式定理(F.F.T.):复杂系统通常以失效模式运行。

它的思想是,在任何给定的软件中都有失败的部分,这些部分被其他部分的失败或其他部分的验证所掩盖。看看现实世界中Therac-25辐射机的例子,它的软件缺陷被硬件故障保险掩盖了。当硬件故障保护被移除后,多年来一直未被检测到的软件竞争状态导致机器杀死了3个人。

其他回答

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

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

汇编语言的禅宗

完美软件:关于测试的其他幻想

TITLE封面http://ecx.images-amazon.com/images/I/51j3BSRspAL._SL500_AA240_.jpg

《完美的软件:关于测试的其他幻想》作者:Gerald M. Weinberg

ISBN-10: 0932633692

ISBN-13: 978 - 0932633699

雷·邓肯设计的高级MS-DOS。

Craig Larman的《应用UML和模式》。虽然四人组的《设计模式》这本书很有启发性,但我发现直到在编程课上偶然看到Larman的书,我才“明白”如何使用设计模式。