一直认为编程语言学习应该是相通的,类似学开车,可以从 语言特性、运行时 的角度去切入。
参考 johnbanq 的文:
当我们在学习编程语言的时候,到底在学什么? - 0xFFFF
以我自己不多的 Java 经验来看,比较建议先在 cli 环境配置一下 JDK(Unix 环境应该非常好安装),搞搞 Java 语言的各种日常操作,做一些简单的数据处理的事情,目标是熟悉 Java 与 stdio 的交互,以此对 Java 的各种语言特性建立直觉。
有了这个基础,可以再去把握一些网络相关的环境;Java 在 Web 主要是后端相关的事情,所以可以关注一些 Web 服务器相关的东西。Java 语言涉及的主要是 JavaEE 技术栈,核心在于 Servlet 和 Servlet Container(比如 Tomcat),再入坑 SpringMVC 等等。
参考:Servlet Container and Spring Framework - Moss GU
由于这一套技术栈成熟又复杂,就比较推荐用 IDEA 之类的 IDE 去辅助组织代码,借助于 IDE 的配置、代码提示等等,可以方便去把握这个技术栈涉及到的各种细节。
进一步学习,楼上的 https://roadmap.sh/backend 我觉得也很不错,涉及到 Web 后端就不仅仅是 Java 语言了,数据库、消息队列各种细节都会有涉及。我相信当你如果把上述的入坑完,接下来要学什么应该自己也会有一个方向~