为程序员编写的10本经典软件开发书籍(程序员编程书籍)

看看这篇 Bounty 的文章,它给出了作者对10本书和资源的建议,这些书和资源会让你成为一个更好的程序员

当我开始进入软件开发领域的时候,网上的资源非常少,我的大部分学习都是通过阅读伦敦环线上的书籍来完成的。其中,斯科特 · 迈尔斯,斯坦 · 利普曼和唐 · 博克斯在90年代后期陪伴我在埃奇威尔路和塔山之间(谢谢你们!).

为程序员编写的10本经典软件开发书籍(程序员编程书籍)

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没有任何关系。

请在评论中向我推荐你的书,无论是经典的还是新的。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年7月15日 上午11:06
下一篇 2022年7月15日 上午11:08

相关推荐

  • 民族地区学校“五聚焦四创新”党建工作模式研究与实践(学校党建引领五抓五促)

    坚持党的领导、加强党的建设是民族地区改革和发展沿着正确方向前进的必然要求。抓好中小学党建工作,是落实立德树人根本任务、培养社会主义建设者和接班人的迫切需要,是促进中小学教育高质量发…

    科研百科 2023年7月12日
    243
  • 信息系统项目管理专员

    信息系统项目管理专员: 如何在项目中取得成功 信息系统项目管理专员是项目管理中的重要一环。他们负责监督和协调项目的所有方面,以确保项目按时、按质、按预算完成。作为一个信息系统项目管…

    科研百科 2025年6月27日
    0
  • 关于新时代公路系统基层党建工作创新发展的思考(公路 党建)

    杨蒋辉 怀化市交通建设投资有限公司 摘要:党的十九大系统总结了五年来党的建设历史性成就,深刻分析了党的建设在新时代面临的挑战、危险和亟须解决的突出问题,对党的建设提出了新任务新要求…

    科研百科 2024年6月25日
    78
  • 参加科研项目的意

    参加科研项目的重要性 随着科技的不断发展,参加科研项目已经成为了许多科学家和工程师的重要任务。科研项目不仅可以提高我们的专业技能,还可以拓展我们的视野,增强我们的研究能力和创新能力…

    科研百科 2024年11月14日
    3
  • 草莓灰霉病的科研项目

    草莓灰霉病是一种常见的草莓病虫害,严重影响了草莓的产量和质量。为了深入研究草莓灰霉病的防治方法,某科研机构进行了一项科研项目。 该科研项目的主要目标是通过实验研究,找出能够有效防治…

    科研百科 2025年4月19日
    1
  • 忻州金石一号老板是哪里人

    忻州金石一号老板是哪里人? 忻州金石一号是山西省忻州市一家著名的艺术品专卖店,它的老板是一位来自外地的艺术家。今天,我想向大家介绍一下这位老板的背景和他的作品。 这位老板名叫张浩,…

    科研百科 2024年10月15日
    5
  • 如何用excel实现办公用品自动化管理

    如何用Excel实现办公用品自动化管理 随着现代办公自动化的不断发展,办公用品管理已经成为了一个越来越重要的环节。对于企业而言,高效地管理办公用品可以提高工作效率,减少库存成本和浪…

    科研百科 2024年11月25日
    3
  • 云龙 项目管理

    云龙项目管理:从优秀到卓越 云龙项目管理是一种新兴的项目管理方法,它强调项目团队的协作和沟通,注重项目的风险管理和质量管理。云龙项目管理已经得到了广泛的应用,并在许多项目中取得了显…

    科研百科 2024年7月16日
    52
  • 大学生科研结题报告(大学生科研项目结题书怎么写)

    大学生科研项目结题书怎么写 在完成一项大学生科研项目的过程中,结题书是一个重要的环节。通过结题书,项目研究者可以向导师和评审委员会汇报项目的进展和成果,同时也可以总结项目经验,为未…

    科研百科 2024年8月1日
    55
  • 黑龙江项目管理软件系统

    黑龙江项目管理软件系统 黑龙江项目管理软件系统是一款功能强大、易于使用的软件,适用于各种不同类型的项目,包括建筑、工程、软件开发等。它可以帮助项目经理和团队成员更好地管理项目进度、…

    科研百科 2025年1月30日
    0