看看这篇 Bounty 的文章,它给出了作者对10本书和资源的建议,这些书和资源会让你成为一个更好的程序员
当我开始进入软件开发领域的时候,网上的资源非常少,我的大部分学习都是通过阅读伦敦环线上的书籍来完成的。其中,斯科特 · 迈尔斯,斯坦 · 利普曼和唐 · 博克斯在90年代后期陪伴我在埃奇威尔路和塔山之间(谢谢你们!).
Edgeware Road Tube Station.
下面列出了9个经典的开发类书籍,它们经常出现在你的工程团队的书籍收藏中,或者如果你不能买到新书,你可以以合理的价格买到二手书。他们中的大多数人都曾经和我一起在伦敦地铁旅行过,我推荐他们作为一种很好的方式来建立坚实的软件工程技能,以补充你特定工作所需要的具体知识。我已经尽量使清单多样化,并保持足够的一般性。其中一些书包含特定编程语言的示例,但是不要因为这个问题而放弃,因为一般的信息仍然是适用的。
我肯定错过了一些人的最爱,请让我知道哪些在评论中,以及为什么你认为他们应该被包括在内。请注意,我链接亚马逊只是为了提供进一步的信息,但这些不是联盟链接,我绝不会从这些推荐中获利,也不会得到作者的补偿(除了他们已经传授给我的知识!).
1.The Pragmatic Programmer: From Journeyman to Master by Andrew Hunt and David Thomas
在一系列课程中收集的一组关于软件开发情况的叙述,这些课程构成了技巧。这本书将提高你的编码习惯和作为一个程序员的前景。
2.Refactoring: Improving the Design of Existing Code 重构: 改进现有代码的设计by Martin Fowler et al.
如何改进现有代码,或从其他开发人员继承的代码。这本书是我多年来经常翻阅的经典之作。
3.Clean Code: A Handbook of Agile Software Craftsmanship 整洁代码: 敏捷软件工艺手册 by Robert C. Martin
这本书是由永远可靠的 Bob 叔叔编写的,它只是简单地教您如何编写好代码,以及如何将坏代码转换为好代码。
4.Testing Computer Software 电脑软件测试 by Cem Kaner, Jack Falk, and Hung Q. Nguyen
一本经典的书,展示了如何测试计算机软件在现实世界条件下。它显示了它的年代,所以寻找最新的版本和浏览过时的例子。
5.The Mythical Man Month 人月神话 by Frederick P. Brooks, Jr.
这本关于软件项目管理的文章集首次出版是在我还是一个蹒跚学步的孩子的时候,但是它仍然是非常相关的(可能比我更相关)。推荐给任何从事或管理复杂项目的人ーー这是我们中的大多数人,对吗?
6.Programming Pearls 编程珠玑 by Jon Bentley
这本书描述了一些核心的编程问题及其解决方案,充满了幽默、实用的编程技巧和扎实的设计原则。
7.Design Patterns: Elements of Reusable Object-Oriented Software 设计模式: 可重用面向对象软件的元素 by Erich Gamma et al.
我对这本书很矛盾。这是一本经典著作,如果你能读完它,你一定会成为一个更好的工程师。我没有读完,这让我很遗憾,但我个人发现,研究火车座位上的图案比其中所包含的冗长的散文更有趣。
8.Organizational Patterns of Agile Software Development 敏捷软件开发的组织模式by James O. Coplien and Neil B. Harrison
阅读这本书,然后把它交给你的经理,并要求他们也这样做。它描述了如何通过一组清晰简单的模式来提高公司的效率。
9.The Inmates Are Running the Asylum: Why High-tech Products Drive Us Crazy and How to Restore the Sanity 为什么高科技产品会让我们疯狂以及如何恢复理智by Alan Cooper
这本书有点自相矛盾,因为它已经过时了,同时,随着软件可用性失控(经常是偶然的,尽管其他人认为它是一种有意识的方法,通过分散用户的注意力来创造社交媒体成瘾的循环) ,它仍然具有高度的相关性。
我的最后一个建议是收集在线资源,而不是一个单一的书名。
10.Safari Books OnlineSafari
时代变了,这些天我不再上下班了,我通常会浏览一些关于特定发展领域的博客文章,而不是坐下来读一整本关于某个主题的书。然而,当我需要一本书的时候,我会去 O’Reilly 的 Safari 在线书店,那里有大量的书籍,我强烈推荐给任何一个开发团队或者个人,他们可以负担得起订阅费。Safari 在线收集范围从高度特定的一般标题适用于大多数软件工程师。除了书籍,你还可以访问在线培训和 O’Reilly 会议视频,通过互动教程和学习途径来衡量你在某一学科上的进步。
注意,至于我上面的书推荐,我和O’Reilly没有任何关系。
请在评论中向我推荐你的书,无论是经典的还是新的。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。