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

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

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

inquestion:this "Code Complete"

当前回答

务实程序员

其他回答

对我影响最大的编程书籍是Allen Holub的《Enough Rope to Shoot Yourself in The Foot》。

书的封面http://ecx.images-amazon.com/images/I/71AE90J735L._SL500_AA240_.gif

哦,那是多久以前的事了。

Craig Larman的《应用UML和模式》。

这本书的书名有点误导人;它确实处理了UML和模式,但它涵盖了更多。这本书的副标题告诉你更多:面向对象分析和设计以及迭代开发简介。

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

书之美在于版权年。

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

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

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

尽管我已经从事了多年的专业编程工作,但Rocky Lhotka关于他的CSLA框架的“业务对象”系列还是让我大开眼界。 他的想法让我再次对软件开发模式和理论感到兴奋。它让我对学习如何成为一名更好的开发人员产生了新的兴趣,而不仅仅是学习最新的令人惊叹的控件或库。(不要误解我,我仍然喜欢一本好的技术书籍-你必须跟上!)

优化软件开发生命周期的可靠代码

尽管这本书只有300页,而且倾向于微软的技术,但它仍然提供了一些很好的与语言无关的花边新闻。