超级硬核,2021年最新Java学习路线图
大家好,我是张讨嫌。耗掉 1024 根长发,花了将近一周的时间,精心给大家整理的 Java 自学从零基础到进阶的中级程序员学习路线!
对于零基础开发小白来讲,Java开发第一印象就是晦涩难懂,入门学习往往无从下手。大家可以先看看我整理的这份 GitHub 上星标 115k+ 的 Java 教程,里面涵盖了 Java 所有的知识点,包括 Java 语法、Java 集合框架、Java IO、Java 并发编程和 Java 虚拟机,内容不多,只讲重点。
GitHub 星标 115k+的 Java 教程,超级硬核!mp.weixin.qq.com/s/d7Z0QoChNuP9bTwAGh2QCw正在上传…重新上传取消
我今年 XX 岁(调皮),使用 Java 开发将近 15 年了,目前虽然不在技术一线,但仍然和 Java 形影相伴,如影随形,每天都在相爱相杀。
虽然我是科班出身,但说实话,十多年走过来,无论是 Java 语言本身,还是它配套的工具和框架都发生了巨大的变化。我自己也是一路学习新的知识,一路丢掉废旧的知识。
现在回头来看,发现自己也走了不少弯路,浪费了不少时间,真的是既遗憾又叹息!
知乎上应该有很大一部分是 Java 初学者,因为是初学,所以面临着巨大的压力,不能付出太高的试错成本。而应该寻找一条更高效的学习路线和一套行之有效的学习方法,否则一不小心,很可能会前功尽弃。
但好在 Java 的学习资料非常丰富,只要我们稍微用心去整理下,就能找出一条高效的学习路径。过去这两年里,我不断地整理自己的思路,分享了不少关于 Java 方面的文章,但都过于分散,借这个机会,我打算重新梳理一遍,希望能对大家的学习有所帮助。
01、学习 Java 之前先学 C
自学 Java 并不容易,尤其是对于非科班的同学来说。所以我强烈的推荐大家在学习 Java 这门编程语言之前,先学一下 C 语言。如果没有 C 语言作为基础的话,在初学 Java 的阶段会莫名的心慌。
前面提到了,我上大学的时候,一上来就学的 Java,并且教材是《Java 编程思想》,真的,就感觉给看天书一样。班里面有 80% 的人都在毕业的时候放弃了编程,很可悲的一件事,不是说 Java 这门编程语言不好,而是我们底子太差,都是第一次接触编程,难度可想而知。
编程语言都是相通的,C 语言作为 Java 语言的母胎,还是非常值得去学习一下打打基础的。其实对于我们程序员来说,学的是计算机科学,而不是编程语言,语言只是工具,没有优劣。像我,就学过 Java、C 语言、Ruby、JavaScript 等等这些编程语言,他们之间确实有很多相似之处。如果学过 JavaScript,能很容易搞懂 Java 的 Lambda 表达式
C 语言的特殊性就在于它可能是唯一一门最适合来学习一系列计算机基础的媒介,比如 Linux 操作系统,就是用 C 语言重构的;比如计算机网络,里面有很多网络协议,有不同的 header 定义,这些字段用 C 语言的 union 和 struct 来操作非常便捷。Java 中虽然剔除了指针这种烦人的东西,但说白了,引用其实和指针差不多,理解了 C 语言中的指针,就能很好的理解 Java 中的引用。
当然了,由于 C 语言的抽象程度更高,学起来也需要花费一番功夫。对于初学者来说,我推荐大家先看一下翁恺教授的 C 语言程序设计。
翁凯C语言_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.com/video/BV19W411B7w1正在上传…重新上传取消
喜欢看书的同学我只推荐一本,《C Primer Plus》,可以说是学习 C 语言的圣经。豆瓣评分高达 9.1 分,包括数据类型、格式化输入输出、运算符、表达式、流程控制语句、函数、数组和指针、字符串操作、内存管理、位操作等等这些基础知识都全部讲解到了,非常适合系统学习 C 语言的读者。
在学习的过程中切记一点,就是一定要多练多练多练,这一点不仅适合学习 C语言,也适合学习 Java 语言。有句话说得好呀,看懂了+上万行代码=学会了。无论是看视频学习,还是看书学习,最怕的就是眼高手低,以为自己看懂了,实际上呢,离学会了还差上万行代码。
一开始学习会很痛苦,我也不例外,直接开干 Java 的时候,简直就觉得自己不是块学编程的料,有想过转别的专业,比如说机械自动化,可惜考试成绩太差,没转成。等到敲的代码越来越多,慢慢的就开窍了,开窍了以后,学习依然会痛苦,但再也没有那种放弃的念头了。
有了 C 语言的基础,再学 Java 就容易多了!
PS:对于初学者来说,起步会很难,甚至不知道该用什么软件来编写代码。我已经提前为大家踩过坑了,强烈推荐 VS Code,颜值高、占内存小、插件丰富、简单易用。
02、学习 Java 之前要安装的软件
工欲善其事必先利其器,战斗之前我们要先配备好武器。
JDK 是 Java Development ToolKit 的简称,也就是 Java 开发工具包。JDK 是整个 Java 的核心,包括 Java 运行环境(Java Runtime Envirnment,简称 JRE),Java 工具(比如 javac、java、javap 等等),以及 Java 基础类库(比如 rt.jar),学习 Java 之前必须要安装。
已经 2021 年了,真没必要在记事本上敲代码了。反正我遇到过太多的课程,包括我上大学的时候,老师一而再再而三的强调,一定要用记事本敲出来第一个程序,并且在命令行里成功运行起来。
这么多年下来,我觉得这个建议真的是糟糕极了。记事本和命令行,怎么能让初学者上手呢?最起码也得是个老江湖才行啊!当年我就差点被记事本和命令行劝退。
Intellij IDEA,不用说,是编写 Java 程序的最佳 IDE,必须得掌握。初次使用的话,建议阅读一下《
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
