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

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

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

inquestion:this "Code Complete"

当前回答

爱德华·塔夫特《任意》:定量信息的可视化展示;展望信息;视觉的解释

其他回答

去年我上了很多课。我读

创新者的困境(颠覆性技术) 神秘的人月(管理软件) 跨越鸿沟(启动) 数据库管理系统,牛书 编程c#,鸵鸟书 开始iPhone开发,葡萄柚书

每本书都很棒,但是克莱顿·克里斯滕森的《创新者的困境》(1997!!)确实是一本很棒的书,它让我真正思考了现代软件世界。要解决的挑战是颠覆性技术,以及磁盘驱动器公司和非技术公司如何总是被新的、改变游戏规则的技术所颠覆。当人们想到谷歌,可能是最大的“网络”公司时,它给了人们一个新的视角。为什么他们什么都要插手?这是因为他们不希望自己的地位被新事物打乱。谷歌上的预告已经足够让人理解了。读它!

Sedgewick的“C中的算法”(第一版)教会了我所有关于算法的知识,也教会了我所有关于文档和复制/粘贴代码的陷阱,因为这个版本中的所有示例代码都来自“Pascal中的算法”版本,并且只是通过一个简单的代码翻译器传递,它没有针对不同的索引方案进行调整。

Mary和Tom Poppendieck的《精益软件开发》绝对是每个开发人员的书架上的书

用Scrum进行敏捷软件开发,作者:Ken Schwaber和Mike Beedle。

我将这本书作为理解敏捷开发的起点。

Steve MacGuire的《编写可靠的代码:微软开发无错误C程序的技术(微软编程系列)》。

有趣的是,这里提到的书中有很大一部分是C/ c++的书。