JavaRush /Java 博客 /Random-ZH /适合初学者及更多人的最佳 Java 书籍 (2023)

适合初学者及更多人的最佳 Java 书籍 (2023)

已在 Random-ZH 群组中发布
我们习惯于快速获取信息并同样快速地吸收信息。我们更喜欢五分钟的视频而不是深入的讲座,更喜欢短文章而不是书籍。我不会声称一本关于编程的好书可以取代任何文章,事实并非如此。它肯定不会取代练习。然而,就我个人而言,真正理解编程的基础知识是在我解决了JavaRush编程课程中的数百个问题并阅读了大量文章之后,开始同时学习书本上的理论并深入钻研之后。一段时间以来,我一直在寻找我个人的“最佳 Java 初学者教程”。下面是几本Java书籍,在我学习的不同阶段都或多或少对我有用。

初学者书籍

在本节中,我收集了您迈出学习 Java 编程第一步所需的书籍。

1. Head First Java,Kathy Sierra 和 Bert Bates

我开始阅读这本书并不是因为它是我最喜欢的,而是因为它是最简单的。许多程序员认为,这本书是最好的从头开始的 Java 教程。而且,它是真正的、完全从零开始的,即适合那些刚刚入门、不太明白什么是野兽编程的人。我承认,我来得太晚了。我想这就是我无法欣赏它的原因。“仅仅阅读”它是非常愉快的,但我花了很长时间才找到其中的具体内容。材料呈现得很生动,但相当肤浅(因为它是从头开始!),许多主题和必要的解释根本不存在。但我的朋友(他继承了这本书)却很高兴,并大喊这不仅是初学者最好的 Java 教科书,而且是直接的世界杰作,复杂的材料就应该这样呈现。

优点:

  • 最好的 Java 教程,从头开始,适合傻瓜,用生动的语言编写。
  • 很酷的插图和幽默。
  • 用现实生活中的例子进行解释。

缺陷:

  • 对于那些已经进入主题的人来说,有很多水域。
  • 谜题和练习并不总是成功。

2.《Java 傻瓜书》,巴里·伯德 (Barry Bird)

我必须承认,当我还是一名程序员时,我就已经想到了这本书。在关于有用书籍的文章的早期版本中,我在评论中被问到了一个关于它的问题,当我在工作中看到它与测试人员时,我决定仔细看看它。Barry Bird 的《Java for Dummies》对于那些愿意使用多种资源来帮助他们学习的初学者来说是一本有趣的书。这不是初学者教程,而是 Java 的第一本参考书。最有效的方法是与分步课程(如 JavaRush 中的课程)同时进行学习,并且(必需!)立即在实践中巩固所学知识。根据演讲,我立刻认出了作者是一位老师,因为他在一些乍一看意想不到的地方停下来,非常详细地审视了所提出的问题。这并非偶然:正是在这些问题上,他的学生最常犯错。但有些主题涉及得很肤浅……但是,这是一本针对初学者的书,你不应该期望它有深度。假设前两章适合初学者,OOP(第 3 章)在另一本书中可以更好地学习,但是第 4 章(高级编程技术 - 解释如何使用类和方法、启动集合、多线程、异常处理)和第 5 章(避免错误的技巧)我认为非常成功且有用。此外,《Java For Dummies》易于阅读,充满了丰富多彩、有趣的示例。它可以在路上的任何地方或睡觉前轻松阅读。当然,如果你对作者的风格满意的话。请记住:这个世界上没有一本书可以让你成为一名软件开发人员。只有练习才能做到。 适合初学者及更多人的最佳 Java 书籍 (2023) - 1

优点:

  • 语言通俗易懂。
  • 对许多主题的中肯建议和良好介绍(第 1、2、4 章)。
  • 很好的例子。

缺陷:

  • 并非所有主题都得到同样好的呈现。
  • 不是每个人都会喜欢作者的风格。

3. Java:绝对初学者的编程基础知识,Nathan Clark

另一本书适合零编程经验的读者。我想说它的主要优点是它的循序渐进的性质。它很好地解释了那些通常会给第一次编程的人带来困难的要点。在这里您将学习如何选择 IDE 以及如何编写您的第一个程序。本书将解释什么是Java开发工具包和Java运行时环境,并提供每段代码的示例。但是...这本书没有俄语翻译,所以我推荐给那些英语至少达到B1水平的人。顺便说一句,每个开发人员都需要了解这个级别的英语,因此通过一本英语书籍学习 Java 可以一石二鸟。这篇文章里这样的书已经够多了。 适合初学者及更多人的最佳 Java 书籍 (2023) - 2

优点:

  • 流畅地介绍了编程和Java语言的基本功能。
  • 演示顺序。

缺陷:

  • 没有深入解释面向对象编程的概念,因此一些实际示例可能会令人困惑。
  • 没有俄语翻译。

4. 思考 Java:如何像计算机科学家一样思考,Allen Downey 和 Chris Mayfield

另一本有趣的英文书。正如作者指出的,本书的主要目标是帮助读者培养解决计算机科学固有问题所需的思维技能。本书面向初学者,因此作者从没有编程经验或 Java 知识的人也能理解的基础知识开始。它写得很简单,对于想要掌握编程和发展算法思维技能的学生或自学成才的人来说可能很有用。与许多其他书籍一样,本书首先介绍 OOP。每章都包含词汇和练习部分,以强化理论和掌握编程技能。 适合初学者及更多人的最佳 Java 书籍 (2023) - 3

优点:

  • 阅读起来轻松愉快。
  • 本书以易于理解的方式介绍了复杂的编程概念。
  • 不错的例子和练习。

缺陷:

  • 缺乏循序渐进的方法。
  • 有些读者可能会在某些章节之后留下疑问,因为某些主题并不总是有详细的解释。

5.Java。初学者指南,赫伯特·希尔特

浏览完这本教科书后,我认为它非常适合那些喜欢比《Headfirst》更传统的材料呈现方式,但又正在寻找从头开始的教程的人。在某些地方,书中的介绍非常详细,让人想起扩展和翻译的文档以及良好的视觉示例。有时候,对我来说,作者越界了,开始咀嚼太多,阅读变得无聊……突然——翻筋斗——一些相当复杂的地方几乎立刻就被错过了,你完全困惑地试图理解什么和在哪里你错过了。不过,书中这样的地方并不多,而且我知道有人认为《初学者指南》对于那些还什么都不懂的人来说是最好的 Java 教程。就我个人而言,我发现这本书参差不齐。假设我开始对集合进行排序,而不是人工解释,他们给了我独立创建基于数组的集合的任务。很酷的问题,但我想首先更好地了解标准集合是什么!虽然这本书和前一本一样被认为是初学者的教科书,但我作为教师的经验表明,它只有与其他材料结合使用才有效:对于人文学科的转换者来说,并不是一切都会简单明了。《初学者指南》适合那些学过编程(例如在大学)、早已放弃编程,同时又喜欢作者的演示风格的人。特别令人高兴的是,该教材不断更新,涵盖了 Java 8 的功能,并且当前版本(第十版)考虑了 JDK 9 和 JDK 10。 适合初学者及更多人的最佳 Java 书籍 (2023) - 4

优点:

  • 对基础知识的传统深思熟虑的介绍。
  • 很好的例子。

缺陷:

  • 从“太咀嚼”到“顺便说一下”有跳跃
  • 有些地方很无聊。
顺便说一句,Herbert Schildt 还有另一本关于编程的著名书籍 - 《Java. 完整指南》。这是一本完全不同的教科书,更加基础。让我们继续讨论吧。

为那些继续或重新开始的人提供的指南

以下书籍最适合那些已经对编程有一定了解并想要更深入地了解 Java 或开始更彻底练习的人。其中有关于新的或相对较新的 Java 功能的手册、参考书和教程,人们通常不会立即了解这些功能,还有有关 Android 的书籍(更准确地说,是一本有关 Android 的书)。

6.Java。完整指南,赫伯特·希尔特

我承认:曾几何时,我从网上下载了这本书,为了评价它,然后买或不买。不是开玩笑,1300页的文字!而且价格并不逊色于数量。我对 Kay Horstmann 的两卷本《专业图书馆》也做了同样的事情(更多相关内容见下文)。展望未来,我会说我选择了第二个。为什么?因为在Java一书中。《完整指南》我看到了与《初学者指南》相同的缺点。有时解释被咀嚼,有时它们被弄皱,但同时它们不仅被弄皱,而且不知何故被冗长地弄皱了。也许这就是作者的风格,我想有人会喜欢,或者更确切地说,根据他们的想法。总体而言,《Java 8:权威指南》是一本很好的 Java 参考书。但就我个人而言,我更喜欢在另一本书中对相同内容的呈现。 适合初学者及更多人的最佳 Java 书籍 (2023) - 5

优点:

  • 完整指南。似乎这里有初学者(而不仅仅是初学者)需要了解的所有主题。
  • 详细解释。

缺陷:

  • 大量的水(但有些人可能喜欢这样!)。
  • 俄语翻译不是最好的。

7.Java。专业图书馆,Kay S. Horstmann,Harry Cornell

希尔特和霍斯特曼的书经常被相互比较。两人都有忠实的粉丝。对我来说,Horstmann 的两卷书是最好的 Java 教科书。它成为我 JavaRush 初级和中级水平的参考书。当我不明白某个话题时,我主要求助于霍斯特曼,他澄清了很多事情。本书涵盖了从语法到多线程编程、程序本地化以及使用 XML 的所有内容。不要让“专业图书馆”这个名字吓到你(这就是吓到我的原因),基础知识都涵盖得很好。此外,定期重读它可以刷新和组织您的知识。

优点:

  • 页数惊人,但水却很少(与 Schildt 不同)。
  • 包含初学者需要的一切。
  • 扩展了 Java 8,考虑了 JDK 9、10 和 11 中的更改。
  • 关于集合和泛型主题的良好演示。
  • 与 JavaRush 完美搭配。直入主题,解决问题,迟早你会听不懂——看霍斯特曼,再试一次。

缺陷:

  • 有些人可能会觉得这本书很枯燥。
  • 没有练习。
  • 俄语翻译有错误。

8. Java 8 实际应用:Lambda、流和函数式编程

在第八个版本中,Java 世界中的新功能非常重要,并且与以前的功能有所不同,因此建议将这些主题与其他主题分开研究。而且:到目前为止还没有出现更重要的语言更新。因此,摆在我们面前的是《Java 8 in Action》,这是一本关于 Java 8 的有趣教科书。需要立即指出的是,它是为那些已经了解“仅仅”Java 基础知识的人而设计的。这本书之所以如此出色,是因为它有许多不同且有用的练习题。示例包括“正确”和“不正确”的代码示例。最主要的是不要混淆。

优点:

  • 以实践为导向。
  • 显示正确代码和错误代码之间的区别。

缺陷:

  • 需要额外的资源才能更深入地了解 Java 基础知识。

9. 《Core Java for the Impressive》(第三版)或 Java SE 9. 基础课程,Kay Horstmann

本书原名是《Core Java for the Impressive》,即《Java Core for the Impressive》。我不知道为什么这个没有包含在翻译中。在我看来,这将有助于这本书不至于在同行中迷失方向。这本书的第二版有俄文翻译,英文版已经有第三版,更新到Java 17。这本书是作为快速参考整理的,用起来很方便找到问题的答案如果您忘记了某些内容或以前用其他语言编程过,则可以提出一个具体问题。我特别喜欢的是这些文字很短,基本上没有咀嚼和水。本书对 lambda 表达式、输入/输出流和模块进行了很好的描述。然而,本书不会解释什么是变量或循环。但除此之外,我已经提到过,基本结构、集合、注释、泛型、日志记录、多线程 - 您在实践中将使用的所有内容。说实话,我真的很喜欢这本书,即使现在我也会偶尔看看。请记住,这本书不适合那些对编程一无所知的人。对于那些已经学习过其他语言或相同 Java 的人来说,这种情况更有可能发生,但时间较长且不完全。

优点:

  • 短信息块。一切都切中要点。
  • 没有不必要的话题。
  • 非常好的精选当前主题,供 Java 初学者学习。
  • 成功的例子。

缺陷:

  • 这本书不适合那些从头开始学习编程的人。

10.Java。开发者手册,Benjamin J. Evans,David Flanagan

一本很好的通用参考书,是霍斯特曼书籍的替代品。包含对初学者和继续深入编程的 Java 开发人员有用的信息。写这句话时的最新版本(第七版)是基于Java 11的。书不长,例子很多,对Java API和最佳开发实践都有讨论。这本书很容易阅读,您可以从中学习该语言的基础知识、有用的编程技术,甚至 Java 的新趋势。

优点:

  • 简短而良好的总结。
  • 这里有新手程序员所需的一切。
  • 对现代工具的良好描述。
  • 成功的例子。

缺陷:

  • 并不总是有足够的术语翻译成俄语。

11. Java 模块系统,Nikolay Parlog

这本书有英语和俄语版本。这是关于Java模块化系统的非常详细的指南。作者认为,如果将代码打包在整齐的块中,那么创建可靠且安全的应用程序会容易得多。Java 中的模块是一个相对较新的工具;自版本 9 以来,基本的架构变化才影响了 Java 核心。尽管有越来越多的项目带有模块,但有些人习惯于以老式方式工作,对这些一无所知有趣的创新。读完本书后,您将了解如何监控不同的 JAR 文件如何交互并轻松找到丢失的依赖项。如果您认真对待模块化 Java 项目或需要学习工作模块,请查看这本书。

优点:

  • 最完整的描述了模块化系统的优点。
  • 迁移到模块的很好的例子和策略。

缺陷:

  • 它的语法描述很少,对于初学者来说有困难。

12. 现代 Java 实践:Lambda、流、函数式和响应式编程

尽管 Java 已经存在很多年了,但该语言仍在不断获得新的功能。当然,我们都是人类,程序员有时会忽略新的功能和方法,并不愿意在 Java 项目中实现它们。Modern Java in Action 等书籍旨在帮助解决这个问题。本指南详细介绍了短期指导培训中最常涉及的主题。我要说明的是,这样的培训通常持续1-3天,而且信息非常集中。因此,新手程序员只是淹没在新信息中而无法吸收它。而本书将一步步带你从lambda表达式到方法引用、函数式接口和线程,如果你能仔细算出来的话。

优点:

  • 本书包含了Java的所有现代功能,因此非常有用。
  • 复杂概念的一致表达。
  • 作者将新趋势与传统趋势进行了比较。因此,即使是初学者也可以推荐这本书。

缺陷:

  • 对于那些已经了解该主题的人来说,这本书可能看起来有点罗嗦。

13. Head First Android 开发

Java 是 Android 的母语。因此,开始使用这种语言进行应用程序开发的最流行的选择之一是创建 Android 应用程序。这本书(有俄语翻译“Head First Programming for Android”)是 Head First 系列的另一本书。所以该系列的家族特征在这本手册中是相当固有的。也就是说,在这里你会发现大量的图片、简单的风格、大量的练习,而没有认真钻研本质。这意味着,如果您想完全了解 Android 应用程序开发,您可能需要做一些额外的研究并深入研究源代码。但如果您想快速开始对该系统进行编程,那么这里就是您的最佳选择。

优点:

  • 简单的风格、图片、各种任务和项目练习,可以让读者积极参与学习过程。
  • 简单易懂:作者试图用简单的术语解释复杂的概念,使初学者更容易理解。

缺陷:

  • 过时:编程和 Android 领域技术的快速变化可能会导致本书不再包含当前的方法和工具。
  • 有些话题处理得太肤浅。

14. 学习 Java:介绍使用 Java 进行实际编程

我首先要说的是,这本书不适合初学者。如果您至少了解 Core Java 并且能够编写简单的应用程序,那么您将需要它。如果是这样,本书将帮助您理解Java语言的各种复杂概念,并解释所有这些类、库、lambda表达式、输入/输出等如何在实际工业编程中使用。本书基于 Java 的现代版本,包含相当简单但对实际工作有用的示例。最后一节讨论了直接将 Java 用于 Web 应用程序和 Web 服务器,这是您在书籍中不常见的内容。顺便说一句,这本书也有俄语版本(“Programming in Java”,Mark Loy)。

优点:

  • Java 的现代版本。
  • Web 应用程序和服务器的示例。

缺陷:

  • 对于初学者来说很难。

永恒的经典

我下面写的书可以称为初学者和中级贾维主义者的神圣文本。

15.《有效的 Java》,Joshua Bloch

这是一件宝藏,而不是一本书,它的作者之一约书亚·布洛赫(Joshua Bloch)重点介绍了语言的基本原理。您很可能已经使用过它的库(例如,在 Java Collection 中)。我马上预约:完全的初学者,除了一些神童速跑者,不需要《Effective Java》这本书。首先,最好掌握语法并至少进行一些编程练习,可以这么说,熟悉它,然后接受 Joshua Bloch 的创作。对于那些想要真正理解 Java、在使用这种语言进行编程时形成正确方法、不仅了解如何做,而且还了解需要完全按照这种方式完成的所有其他事情的人来说,本书将非常有用。也适合那些想要深入理解OOP的人(原则上,这些是相互关联的东西)。本书是关于面向对象编程方法背景下的 Java 的最佳教科书。

优点:

  • 关于 OOP 主题的精彩材料介绍。
  • 提供了最佳编程实践。
  • 作者对Java非常了解。

缺陷:

  • 对于初学者来说很难。

16.Java 哲学,Bruce Eckel

这本书的标题不言而喻。对于每个想了解 Java 的人来说,这又是一个阿尔法和欧米伽!在本书中,您将找到很好且清晰的示例,并且从中可以清楚地了解 Java 的工作原理。我很难说这两本书中哪一本更好——《Java 哲学》或《有效编程》。我想说,Eckel 对初学者更友好,而 Bloch 则需要一些经验。当我刚开始学习 JavaRush 时,我第一次阅读了《Java 哲学》中的章节(我认为它在早期级别之一被列为推荐)。那么她不适合我。但在 10 级或 12 级之后 - 这是一首歌!而且,我会说,这是一首非常有用的歌曲。后来当我谈到有效编程时,我又回到了这个话题。我会这么说:让布洛赫和埃克尔谈论同一件事,但以不同的方式,并给出不同的例子。

优点:

  • 专业人士对 Java 原理的深入介绍。
  • 对于那些从其他语言转向的人来说这将是有好处的 - 例如,与 C++ 有很多比较。
  • 在我看来,你可以从第 10 级开始阅读它,但埃克尔——要晚一点。

缺陷:

  • 俄语翻译非常不成功。

通用编程书籍

以下书籍与 Java 没有直接关系,但对初级开发人员很有用,因为它们有助于培养程序员的思维并理解计算机的工作原理、编程的主要原理和概念、什么是干净的代码以及如何编写它。

17. Java 中的经典计算机科学问题

David Kopec 的这本书可以翻译为《Classical Problems in Computer Science in Java》。它既适合经验丰富的开发人员,也适合那些了解编程语言并已经开始面对现实世界问题的初学者。或者对于那些对非标准任务感兴趣的人来说,可以培养程序员的思维。或者对于那些想要提高自己的技能并在面试中取得好成绩的人来说。有些任务看似难以克服,但编程的世界比看起来要小。最有可能的是,有人已经解决了你无法解决的问题。David Kopec 在他的书中收集了最有用的现成解决方案、原理和算法。经典计算机科学问题包含 55 个实际示例,涵盖最新主题:基本算法、约束、人工智能等。本书的主要主题:
  • 递归、记忆和位操作。
  • 搜索、图形和遗传算法。
  • 聚类(k-means 方法)、神经网络和竞争搜索。
  • 优点:

    • 所有有用的算法和方法都在一本书中。
    • Java 中的示例。

    缺陷:

    • 有些例子对于初学者来说很难理解。

    18. 《Head First Learn to Code》作者:Eric Freeman

    我已经在本文中两次提到了 Head First 书籍。这是第三个!与该系列中的所有书籍一样,它是为绝对的初学者编写的,并且致力于编程本身。如果你以前读过这个系列,那么当你打开这本书时,你会很容易认出《Head First》的标志性风格。如果您需要以有趣、易于理解的方式了解关键编程概念的帮助,我推荐这本书。

    优点:

    • 提供对编程的一般理解。

    缺陷:

    • 使用 Python 中的示例(因为它被认为是初学者最简单的语言)。

    19.《干净的代码》,罗伯特·S·马丁

    新手程序员不太关注他的代码风格。他更专注于纠正错误。然而,改进你的风格对于你的潜在工作非常重要:不遵守干净代码的人很难在项目中合作。其代码难以阅读和维护。本书将向您展示好代码和坏代码之间的区别,并教您使用最佳实践编写干净、可读代码的基本规则。如果询问专业人士,他很有可能会向每个有抱负的开发人员强烈推荐这本书。

    优点:

    • 创建可读代码的好例子和技巧。
    • 同类书籍中为数不多的一本。

    缺陷:

    • 作者有时也太谨慎了。

    20. 代码:计算机科学的秘密语言,Charles Petzold

    这本书既可以推荐给对计算机感兴趣的小学生,也可以推荐给拥有多年经验、想要更好地理解计算机科学的程序员。我在高中时看到了这本书的俄语版本,受到了很大的启发。它甚至使用非常简单的示例解释了电路设计,这一切都从鸡和基本的手电筒开始。作者涵盖了广泛的主题,如电力、电路、继电器、二进制系统、逻辑、门、微处理器、代码等,以逐步建立对计算机技术如何工作的理解。读完本书后,您将了解桌面上像素背后的内容以及每次使用设备时会发生什么。

    优点:

    • 深入研究最低级别的硬件。

    缺陷:

    • 有时潜水太深:)

    21. 破解编码面试,Gail Laakmann McDowell

    对于那些计划在不久的将来寻找软件开发人员工作的人来说,这是一本非常有趣的书。它包含面试过程中可能会被问到的各种实际问题和解决方案。当然,一切都在流动,一切都在变化。开发人员“测试”的趋势正在发生变化。然而,这本书将帮助新手了解面试的期望。不过,我建议您在论坛和 Java 社区中温习这些知识。

    优点:

    • 准备现实世界的编程面试。

    缺陷:

    • 如果没有额外的来源,这将无济于事。

    算法和数据结构

    了解算法有助于有效、最佳地解决软件开发问题。了解如何选择正确的数据结构有助于提高性能、降低内存成本并提供更稳定、更高效的程序。然而,你至少需要了解他们才能通过面试。下面是一些有用的书籍。

    22. 摇摆算法,Aditya Bhargava

    一本关于算法基础知识的非常有趣且相当简单的书。它以图形形式解释了排序和搜索等流行算法。正是这样的书可以帮助你理解算法的美丽和复杂性,并全心全意地热爱它们。书中有大量图片:相比于解释,作者更喜欢视觉方式。本书分为几个小节,并附有各种示例,以确保以正确的比例吸收新信息。

    优点:

    • 很好的图形解释。
    • 关于这个复杂的地方很有趣。

    缺陷:

    • Python 中的示例。

    23. 算法导论,Thomas H. Cormen、Charles E. Leiserson、Ronald L. Rivest、Clifford Stein

    《算法导论》(俄语书名“算法:构造与分析”)是一本非常成功的关于算法的书,适合那些喜欢对材料进行一致和彻底介绍的人。书中的所有示例都是用所谓的伪代码编写的,也就是说,不是用真正的编程语言,而是用每个人都可以直观理解的合成语言。虽然这本书被宣传为“算法入门”,但涵盖的主题非常广泛,并且对数据结构和算法的概念解释得相当好。
    • 排序:详细研究插入排序、交换排序、快速排序、归并排序等各种排序算法。
    • 搜索:向前搜索、向后搜索、二分搜索等。
    • 树:二叉树、红黑树、AVL树等。
    • 图:图遍历、最短路径搜索、最小骨架树等。
    • 动态规划。
    但本书也有其不足之处。在我看来,引言过于关注算法的理论方面,但有时缺乏有关其实际实现的细节。原著是用相当简单的英语写成的(我推荐英语版本!)。

    优点:

    • 对排序、搜索、树、图等最重要算法的出色理论介绍。
    • 简单的英语。

    缺陷:

    • 实践不够,重点关注主题的理论方面。

    24. 思考数据结构:Java 中的算法和信息检索 (Allen B. Downey)

    这是在 Java 编程中使用数据结构和示例的有用指南。本书注重实践,帮助你快速理解如何在实际程序中实现和使用算法和数据结构。作者以通俗易懂的方式解释了算法和数据结构的复杂概念,因此如果您至少具备基本的编程技能,那么这本书就适合您。每个部分都包含主题介绍、示例、附加解释和巩固理论的练习。特别好的一点是,每一章都包含设计问题,使读者能够应用他们所学到的知识来创建自己的算法和数据结构的实现。

    优点:

    • 简洁的材料和有用的例子。
    • 项目任务的可用性。

    缺陷:

    • 对于初学者来说可能有点困难。
    • 并非所有主题都得到同等深度的涵盖。

    25. 算法,罗伯特·塞奇威克,凯文·韦恩

    最著名的编程书籍之一,由该领域的真正专家撰写,他们培养了不止一代软件工程师。如果您没有被彻底的学术演讲和完全沉浸在该主题中吓倒,如果您准备好真正理解算法并一劳永逸地分析它们,请学习这本书。对于学生、教师和开发人员来说,这是一个不错的选择。然而,对于初学者来说,可能需要额外的时间和精力才能很好地掌握书中的内容。作者成功地将理论与Java中的实际例子结合起来,使读者更容易掌握复杂的概念。

    优点:

    • 清晰、彻底的演示。
    • Java 中有很多例子。
    • 主题多样:这本书几乎涵盖了您需要了解的有关算法的所有内容。

    缺陷:

    • 过多的学术演讲。
    • 如果没有适当的支持和帮助,您自己学习这本书可能会很困难
    评论
    TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
    GO TO FULL VERSION