查看原文
其他

你们要的Java学习路线图来了

华章章老师 华章计算机 2022-10-26

众所周知,Java是市场上占有率排名前三的编程语言,Java作为企业级应用开发的首选,不仅在很多企业得到应用,也深受互联网大厂的青睐。对于求职找工作的朋友来说,Java可能仍然是后端工程师的优选,虽然Golang和Python一直在追赶,但是Java作为老牌语言,在企业中的地位很重要,它的市场空间仍然是很难撼动的。

学习Java,就是为了更好地开发应用,不论是开发Web应用,还是开发中间件,亦或是微服务,都是Java语言所擅长的,加上Java生态的丰富多彩,对于企业级应用的全方位支持,使用Java的开发大型应用的成本相对还是比较低的。
 
想从Java小白进阶到Java架构师,这一篇Java学习路线汇总内容不容错过!
 
小编搜罗了各大主流公司面试和使用的技术,整理出了Java学习路线图,适合于初、中、高级别的Java程序员,建议收藏。
 


01第一阶段 Java编程基础

基础不牢,地动山摇,做Java开发,Java基础是最需要下功夫的一项。以后能达到什么高度,完全取决于基础掌握到什么水平。
 
想要基础扎实,看书沉淀是必须的,建议有一些编程基础的朋友好好研究一下《Java核心技术 卷1》,书里面详细讲解了JavaSE所有内容的原理,如果你能把这本书研究透,以后会有很高的技术造诣。
 
如果是非科班出身的零基础小白,可以先在网上找些视频看,有助于理解,网络上视频资源虽然很多,但大多不够系统,所以拥有一本Java编程基础的书籍,仍是你系统学习Java所必备的资源。
 
《Java核心技术》曾获Jolt大奖,是每个Java工程师案头必备的技术手册,阅读时可以跳过图形界面程序设计、Swing、以及部分日志章节。并发的知识比较深入,在基础阶段大致了解即可。(第11版根据JavaSE 9-11全面更新)

《Java语言程序设计 基础篇 原书第12版》被世界各地的大学选作教材,全球畅销20余年,第12版根据Java9-11更新。本书通过示例讲解问题求解技巧,提供大量的程序清单,每章配有丰富的复习题和编程练习题,帮助读者掌握编程技术并解决实际开发中遇到的问题。

02第二阶段 数据库
数据库技术是做业务系统必备技能,是一门公共的学科。Java、C、python、C#等程序员都需要学习数据库。主流的数据库有MySQL、Oracle、SQL Server等等,银行、政府使用oracle的较多;互联网公司、一般企业使用MySQL较多。你只需要搞定一个就可以了,知识都是相通的,一通百通。

学习数据库技术后,可以应对日常工作的增删改查、复杂业务表结构设计规范、使用Java语言和数据库打交道。
《数据库系统内幕》
高效内功修炼必备,从数据库开发者角度,全景式解读现代数据库技术

03第三阶段 JavaWeb


JavaWeb是一系列技术的综合,也是大多数Java学习者日后的技术方向。及早的了解JavaWeb也有利于更深层面理解,Java在完整的应用中,是如何与各个模块交互并发挥作用的。
 
Web前端技术

虽然目前各大公司基本上确实已经前后端分离了,但是想成为一名优秀的程序员前端技术还是要了解的,了解了前端界面和后端数据是怎样交互的,在与前端工程师沟通合作时也会更加顺畅,理解项目更通透,解决问题准确迅速。另外,像一些小公司仍要求全栈,希望招来的后端开发也能做一些前端的工作,省一些人力成本。
 
前端三大件:CSS+HTML+JavaScript也是必会的内容,这些学完后,为了做出更好、更炫的交互式体验效果,我们还需要学习Vue/React,以及打包工具Webpack等等。

 

前端学习路线推荐:送你一份入门前端学习路线图

 
Web后端技术

掌握前端技术只能做静态网站,但它页面数据不会因业务而动态变化,而动态网站可以根据后端数据库中存储的数据实现不同的内容展示,应用更广泛,因此程序员必须要学会做动态网站。使用Java做动态网站,我们需要学习Servlet、Filter、Session、Cookie、EL表达式、JSTL等做动态网站的完整知识体系,重点要理解Servlet的原理以及生命周期。学完可简单做个OA系统、内容网站、BBS等。


04第四阶段 Java编程强化


1、Java进阶

在做完一个简单完整的JavaWeb项目后,我们对代码的认知和理解会提高不少,这对接下来的深入学习打下基础。Java圣经:《Java编程思想》值得仔细品读,作者的功力十分深厚,即使很多内容还无法理解,但每次读完一定会有所收获。这是一本伴随我们技术成长的好书,买一本放在旁边,摸着就有底气。
 

Java学习必读经典,殿堂级著作!《Java编程思想》赢得了全球程序员的广泛赞誉,即使是晦涩的概念,在BruceEckel的文字亲和力和小而直接的编程示例面前也会化解于无形。从Java的基础语法到高级特性(深入的面向对象概念、多线程、自动项目构建、单元测试和调试等),本书都能逐步指导你轻松掌握。

读完Java编程思想,建议写一个有一定复杂度和代码量的后台项目。可以是一个http服务器,一个大型聊天室,要强化我们的Java基础,同时也为日后的招聘积累项目经验。
 
做完项目我们又该看书沉淀技术了,此时推荐阅读《Effective Java(原书第3版)》,这本书并不厚但是干货十足,作者讲述Java的最佳实践和经验规则。它能帮助我们写出清晰、健壮、高效的代码,同时这本书涵盖了非常多的面试考点,一定要牢记于心!


“我很希望我10年前就能拥有这本书。有人可能认为我不需要任何Java方面的书籍,但是我需要这本书。”——Java之父James Gosling
你是否正在寻找一本能够更加深入地了解Java编程语言的书,以便编写出更清晰、更正确、更健壮且更易于重用的代码?本书再适合不过了!这是一本分享经验并指引你少走弯路的经典著作,针对如何编写高效、设计优良的程序提出了最实用、最权威的指导方针,通过90条经验法则,探索新的设计模式和语言习惯用法,帮你更加有效地使用Java编程语言及其基本类库。适合已经掌握Java核心技术的程序员,想更加深入地了解Java编程语言的开发者阅读。


Java核心技术卷2:高级特征》全面覆盖Java技术的高级主题,对Java技术的阐述精确到位,叙述方式深入浅出,并包含大量示例,从而帮助读者充分理解Java语言以及Java类库的相关特性。



2、并发

前面学了JavaSE基础,但它在企业级应用中程序处理业务的效率并不高、扩展差,我们还要针对性的提高程序处理业务的执行效率、增强程序扩展性。就要学习设计模式、Java并发包原理、线程的内存模型、JVM调优等。学完以后,能增加一个中级程序员的知识储备,无论在面试过程中还是将来技术的深入打一个良好的基础。
 

Java并发编程里程碑著作!10年畅销100000+册。从并发编程的基本理论入手,逐步介绍了在设计Java并发程序时各种重要的设计原则、设计模式以及思维模式,使得开发人员能够更快地领悟Java并发编程的要领,快速地构建大规模的并发应用程序。


3、JVM
 
对于Java 程序员来说,JVM 帮助我们做了很多事情,比如内存管理、垃圾回收等等。JVM是 Java 后端面试(大厂)中非常重要的一环。不论是应届还是社招,面试国内的一些大厂,你都会被问到很多 JVM 相关的问题.只有搞懂了JVM 才有可能真正把 Java 语言 "吃透"。学习 JVM这部分的内容,一定要注意要实战和理论结合。学习JVM,看周志明老师的《深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)》足以。
 

大厂面试通关宝典全新升级!第三版大幅更新50%以上内容,周志明从Java技术体系、自动内存管理、虚拟机执行子系统、程序编译与代码优化、高效并发5个维度全面剖析虚拟机。以实战为导向,通过大量实际案例,分享解决各种Java技术难题的方案和技巧。几乎涵盖大厂面试全部知识点。值得所有Java技术人员一读再读。


4、热门技术框架

企业中广泛使用一些优秀的框架技术来解决开发效率低、代码量大、开发周期长、开发成本高的问题。因此我们还需要学习框架技术,项目开发中主流的Java框架技术有SpringMVC、Spring、SpringBoot、MyBatis、MyBatis Plus等。这些框架技术都是一个优秀程序员所必备的技能。学完 Java Web 框架,还需要看看 JVM 原理,GC、类加载机制这些,大厂都爱问。
 

5、数据结构和算法

数据结构是算法的基础,一定要清晰明了。算法则是笔试面试中无法绕过的难关,推荐去LeetCode刷题,积累一定题量之后,做算法题会很快找到类型方法。
 
数据结构与算法分析:Java语言描述(原书第3版)是国际著名计算机教育专家Weiss数据结构与算法Java描述经典教材新版,把算法分析与高效率的Java程序的开发有机地结合起来,深入分析每种算法。


6、其他知识

作为一个优秀Java工程师,多线程、高并发、异步、服务器中间件、服务器技术、容器技术、软件项目管理知识也要一并掌握,文前导图有推荐书目,这里就不一一展开了。
 

05第五阶段 分布式架构


企业发展过程中,业务量和用户量逐渐增加,为了保证系统的可用性,系统越做越复杂,研发人员增多,大家很难共同维护一个复杂的系统,往往修改部分内容,导致牵一发而动全身,所以我们需要升级系统架构,需要用到分布式微服务的技术。学习完该阶段内容,可以具备大型SOA架构和微服务架构能力,能掌握大型微服务项目必备技术和实际经验。
 
微服务架构设计模式


由世界十大软件架构师之一、微服务架构的先驱、Java开发者社区的意见领袖Chris Richardson亲笔撰写,旨在帮助架构师和程序员学会使用微服务架构成功开发应用程序。书中描述了如何解决我们将面临的众多架构设计挑战,涵盖44个架构设计模式,系统解决服务拆分、事务管理、查询和跨服务通信等难题。本书将教会你如何开发和部署生产级别的微服务架构应用,帮助你设计、实现、测试和部署基于微服务的应用程序。


本书是一本以“如何构建一套可靠的大型分布式系统”为叙述主线的技术手册。作者周志明十多年来一直从事大型企业级软件的架构研发工作,较完整地经历了从最早的大型单体系统到如今基于云原生基础设施的架构演变过程。


06第六阶段 架构师


成为架构师是每个程序员的梦想,成为一个合格的架构师需要掌握掌握哪些能力呢?企业中业务解决方案和技术难点都有哪些?《架构师的自我修炼:技术、架构和未来》《架构真意》,《架构之道》等书给你指明方向。

 



扫码关注【华章计算机】视频号

每天来听华章哥讲书




更多精彩回顾



书讯 | 9月书讯 | 秋天的第一本书,来了资讯 | DB-Engines 9月数据库排名:SnowFlake坐上了火箭书单 | 送你一份入门前端学习路线图干货 | 微服务设计:去中心化的技术治理与数据管理收藏 | 5G时代音视频开发利器WebRTC究竟长啥样?上新 | 【新书速递】你需要掌握的架构之道:系统设计+项目设计赠书 | 【第72期】什么是数据产品经理?需要什么能力?有哪些相关书籍可以读?

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存