亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 工业技术

2021 年要读的 17 本最佳编程书籍

编程是最受欢迎的领域之一,它为候选人提供了大量学习和赚钱的机会。但是,要在该领域蓬勃发展,您需要不断学习和发展您的技能。还有什么比书本更值得学习?

最好的编程书籍不仅能告诉你语言的语法和语义,还能帮助你思考、组织和成为更好的编码员。他们教你如何高效地解决问题,这确实是程序员最重要的一课。

互联网上有很多文章声称是必读的编程书籍列表,但它们都推荐相同的旧书。寻找好的新鲜资源变得非常棘手。

为了让您更轻松地完成这项工作,我们列出了一些专门编写的最好的编程书籍,旨在为您提供对成为更好的编码员很重要的所有领域的坚实基础。如果您只阅读其中的一篇,您将比周围的几乎所有人领先一步。

17。不要让我思考,重新审视

作者: 史蒂夫·克鲁格
发布于: 2013

适用于: 初学者

作者使网络可用性的主题真正有趣。除了轻松的写作风格,他还给人一种机智的感觉,让您从头到尾保持注意力。

这本书让你深入思考可用性和可访问性。所有章节逻辑清晰,简明扼要。有大量示例解释了作者的观点,并展示了网络项目中的不同利益相关者如何为网站的可用性做出贡献。

在我看来,每个人都应该读一读这本书——设计师应该在下笔之前阅读它以学习黄金法则,编码人员应该阅读它以了解实现可用性的技术要求,而项目经理应该阅读它来激发大脑思考并以新的方式看待世界。

16。人件:富有成效的项目和团队

作者: Tom DeMarco 和 Tim Lister
发布于: 2013(第三版)

适用于: 初学者

《Peopleware》由两位软件顾问撰写,是一本关于软件组织管理的名著。它强调了这样一个事实,即软件开发的大多数问题都是人为的,而不是技术问题。

这本书探讨了个人工作视角、企业意识形态和工作空间理论之间的冲突。大多数主题都是作为由权威来源或一些具体故事支持的原则提出的。

任何工作人员(无论他/她是经理还是被管理人员)都应该阅读它,因为它以非常简洁和直接的方式告诉您如何建立成功和有效的团队。

15。有效处理遗留代码

作者: Michael Feathers
发布于: 2004

适用于: 中间体

Feathers 的书已经超过 16 年了。然而,它的内容并没有过时。它包括一个包含 24 种破坏依赖关系的方法的目录,允许您在程序中安全地进行更改。

这本书教你如何使用未经测试的大型遗留程序,如何准确识别需要更改代码的位置,以及如何处理似乎没有任何适当结构的应用程序。

您会发现许多可以应用于任何语言或平台的技术,包括 C、C++、C# 和 Java。有些技术似乎已经过时,但您永远不知道何时可能需要它们。

14。制作自己的神经网络

作者: 塔里克·拉希德
发布于: 2016

适用于: 初级和中级

当您购买与人工智能相关的书籍时,您通常会期待什么。每页都有定义?定理和证明?数学多吗?无数枯燥的段落?嗯,这本书不一样。您将获得理解主题所需的内容并将其付诸实践 - 不多也不少。

它教你如何制作自己的神经网络(在 Python 中)并训练它识别人类手写数字。本书分为三个部分:

对于完全不了解神经网络如何工作的人,这本书可以让他们大开眼界,并为未来的学习奠定基础。

13。代码:计算机硬件和软件的隐藏语言

作者: Charles Petzold
发布于: 2000

适用于: 初级和中级

这本书通过一个简短的线性叙事格式打开了计算的世界。作者从摩尔斯电码、盲文和布尔逻辑等旧技术开始,逐渐赶上现代时代,谈论 HTTP 和 WWW。

然后,他解释了最近的发展,包括 ASCII、操作系统和浮点数学等主题。为了使章节有趣,他也很少使用隐喻和类比。

无论您的技术技能如何,这本书都会吸引您,甚至可能唤醒您内心的技术爱好者。

12。 C++ 编程语言

作者: Bjarne Stroustrup
发布于: 2000

适用于: 中间人到专家

由 C++ 之父亲自撰写,这是世界上最受信任且阅读最广泛的 C++ 书籍。它完整​​、权威地涵盖了 C++ 语言、其关键设计技术和标准库。

这本 1300 页的书可以分为三个部分。第一部分(第 2-5 章)是关于 C++ 的速成课程。第二部分(第 6-29 章)是结构教程部分。最后一节(第 30-44 章)探讨了标准库,它与 C++ 语言本身一样重要且不可或缺。

如果你想快速学习语言,这不适合你。但是,如果您的目标是成为大师(需要花费大量时间和精力才能实现),那么这本书适合您。这是一篇很长且技术性很强的读物,涵盖了从基础到深奥的语言的方方面面,非常详细。

11。算法简介

作者: Thomas Cormen、Clifford Stein、Ronald Rivest、Charles Leiserson
发布于: 2001

适用于: 初级和中级

本书详细介绍了广泛的算法,从图论中的经典算法到数论、计算几何和字符串匹配中的特殊算法。

一切都以非常简单的语言进行解释,而不会牺牲覆盖深度或数学严谨性。但不要指望可以复制或下载的纯算法手册。

如果您是初学者,则需要仔细阅读每一章。每章末尾的练习将帮助您更好地理解刚刚阅读的概念。只需在这本教科书中投入足够的工时,您就会学到具体的方法来确定您使计算机工作的难度。

10.有效的 Java

作者: 约书亚·布洛赫
发布于: 2017

适用于: 初学者到专家

自第一版(2001 年出版)以来,Effective Java 发生了巨大的变化。作者已更新标题以利用新的 Java 版本和库功能。

与以前的版本一样,每一章都包含多个部分(每个部分都以一篇简单的独立文章的形式编写,提供对 Java 平台微妙之处的见解)和更新的代码片段。

这本书涵盖了几乎所有重要的 Java 特性以及我们今天使用的几个库的好坏实践。由于很难记住所有内容(即使对于有经验的程序员也是如此),我建议您在编码时将其作为参考书。

9.流利的Python

作者: Luciano Ramalho
发布于: 2015

适用于: 专家

跟随真正了解编程语言并具有良好教学法的作者总是很高兴。 Luciano Ramalho 是这些作者之一。他满怀热情地撰写关于 Python 的文章,但毫不掩饰它的缺陷和缺陷。

虽然有些章节看起来很简单,但其他章节涵盖了怪癖和复杂之处,触及了语言的核心。它涵盖了 Python 数据模型、数据结构、作为对象的函数、控制流和元编程。

总的来说,这本 700 页的书将向您介绍 Python 的核心功能和库,并教您如何使您的代码更快、更短、更易读。

8.代码完成

作者: 史蒂夫·麦康奈尔
发布于: 2014(第二版)

适用于: 初学者到专家

这本经典书籍经过全面更新和修订,包含数百个新代码示例和前沿实践,展示了软件开发的科学和艺术。

全书共分七部分:前六部分是打好基础、编写高质量程序、变量、语句、代码增强。第七部分是关于软件工艺(字符、样式、布局和文档)。

在我看来,每一个有 2-3 年经验的程序员都应该读一读这本书。虽然它并不适用于所有的软件开发过程,并且在某些地方可能会过时,但它确实传达了所有程序员都应该理解和接受的想法。

7.深度学习

作者: Ian Goodfellow、Yoshua Bengio 和 Aaron Courville
发布于: 2016

适用于: 专家

这为神经网络及其深层版本提供了大量细节。作者对难点进行了分类,以流畅地传达思想。

本书分为三个部分:

本书适用于已经熟悉深度学习概念并希望探索其理论背景的人。这对博士来说也非常好。工作围绕人工智能展开的学生和研究人员。

阅读:50 种计算机编程法则

6.人工智能:一种现代方法

作者: Stuart Russell, Peter Norvig
发布于: 2015

适用于: 初级和中级

这本书不仅是对人工智能的一个很好的介绍,而且还可以作为技术写作的调查课程。除了接触过一些数学符号和对算法效率或计算复杂性的基本了解之外,它不会假设有大量的背景知识。

就人工智能而言,这本书包含了您可能想知道的一切。每个概念都得到了很好的解释并附有示例,以帮助您找出其背后的真正含义。

它还涵盖同一领域的实际影响,例如语音识别、机器翻译、机器人技术等。读它,再读它,用心对待它——你将在未来的很长一段时间内获得回报。

阅读:8 种最佳人工智能编程语言

5.干净的代码:敏捷软件工艺手册

作者: 罗伯特·塞西尔·马丁
发布于: 2007

适用于: 初级和中级

Clean Code 的作者以开发众多软件设计原则而闻名。在这本书中,他介绍了“即时”清理代码的最佳敏捷实践。

它具有许多代码片段,您需要确定它的问题以及该代码的正确之处。这本书教你如何糟糕的代码,以及它应该如何编写。

共有三个部分。第一部分介绍了编写干净代码的模式、原则和实践。第二个包含许多不同的案例研究。第三个包含在进行案例研究时收集的启发式列表。

尽管大多数示例都以 Java 为中心,但任何对编写更好的代码感兴趣的人都可以阅读本书——无论您是软件开发人员、团队负责人、系统分析师还是项目经理。

4.破解编码面试

作者: Gayle Laakmann McDowell
发布于: 2011

适用于: 初级和中级

Cracking the Coding Interview 是关于如何在编程或软件开发面试中脱颖而出的最广泛、最详细的指南。

首先解释技术面试的“为什么”,如何练习非技术问题,如何分析和分解问题,如何编写高效的代码,以及如何应对接受和拒绝。

然后你会发现 180 多个编程问题和答案,它们构成了本书的大部分内容。每个部分首先讨论核心知识和解决类似问题的方法,深入研究解决这些问题的精确技术。您还将在书中找到一个链接,以便您自己下载、编译和分析解决方案。

3. Grokking 算法

作者: Aditya Bhargava
发布于: 2015

适用于: 中间人和专家

这是对计算机科学核心主题的一种解除武装的看法。这本书教你如何将算法应用于你作为一名程序员在日常生活中面临的现实问题。

它从搜索和排序等简单问题开始。随着您的思维能力的提高,您将处理更复杂的主题,例如散列、图形、贪婪算法、MapReduce、P 与 NP、数据压缩等。一切都使用插图和视觉示例进行解释。

无论您是在开发移动应用程序、视频游戏还是商业工具,您都将学习解决以前无法掌握的问题的算法方法。例如,您将能够使用霍夫曼编码了解数据压缩的工作原理,使用图形算法编写拼写检查器等。

阅读:14 种编写代码的最佳编程软件 [2020]

2.设计模式:可重用的面向对象软件的元素

作者: Erich Gamma、Ralph Johnson、Richard Helm、John Vlissides
发布于: 1994

适用于: 初级和中级

“四人帮”在面向对象软件设计方面积累了丰富的经验,针对常见的设计问题提供了一份简洁明了的解决方案目录。

本书首先描述了什么是模式以及它们如何在面向对象的工具中有用。它教您如何将这些模式融入软件开发阶段,以及开发人员如何最有效地利用它们来解决自己的设计问题。

本书分为两部分,前两章解释了面向对象编程的优缺点,其余章节探讨了 23 种经典软件设计模式。它包含大量的 Smalltalk 和 C++ 示例。

它被视为面向对象设计理论和实践的重要来源。已以 14 种语言售出超过 50 万份。

1.务实的程序员:您的精通之旅

作者: 安德鲁亨特和大卫托马斯
发布于: 2019

适用于: 初级和中级

这是有影响力的书实用程序员的第二版 1999 年出版。二十年后,这个新版本重新审视了现代编码员的意义。

它包括一些以务实的方式改进开发过程的技巧。它涵盖了广泛的有用主题,从职业发展和个人责任到保持代码灵活和易于维护的架构方法。

阅读:14 种编写代码的最佳编程软件

这本书将教你如何

如果您对大多数编程书籍的方法感到沮丧,那么您应该尝试一下。它拥有成为务实程序员所需的一切。


工业技术

  1. SPICE 编程基础
  2. 微处理器编程
  3. 15 个最佳 C++ IDE:免费 Windows 编辑器编译器 | 2021
  4. 15 门最佳 C++ 在线编程课程(2021 年 12 月)
  5. 适用于 Windows、Linux、Mac 的 10 个最佳 C# IDE(2021 更新)
  6. 前 100 名 C 编程面试问题和答案(2021 年)
  7. 2021 年 13 家最佳 B2B SaaS 公司
  8. 量子计算的 12 个最佳应用 | 2021 版
  9. 2021 年要学习的 9 种新编程语言
  10. 机器人焊接编程挑战和最佳实践
  11. 2021 年最佳刀片和刀柄激​​光雕刻机