2021年全新Java学习路线图,对标阿⾥P7技术栈
⼀位专注Java开发10年的程序员⽼鸟(威哥)⾃述:
搞Java很多年了,⼀直习惯把学习的知识整体成⽂档,多次提笔不知道先写点啥,⾃⼰⼀直专注于 Java 10多年了,不敢说⾃⼰技术多⽜X,但⼀直保持着对技术的热爱,当然除了热爱还是不够的,是什么信念⽀撑着我到现在,⽤⼀句话来概括就是: 我当Java为初恋,时时刻刻把她念,千万 BUG 不可怕,耐⼼细致征服她。借李雪琴的⼀句话,你看,我开头不就写完了嘛。
这是我的JAVA交流【796170550】,技术交流,就业招聘,⼤⼚内推,教程源码视频福利应有尽有,欢迎JAVA程序员们加⼊~
其实⼩⽩在学习Java之前,是需要做⼀个规划的。有了规划,学习起来才可以更⾼效,学习到的东西也更多。学习路上有什么问题都可以加下图美⼥⽼师~备注“777”有惊喜哦~⼀定要记得备注“777”⼀定要记得备注“777”⼀定要记得备注“777”重要的事情说三遍。好了要进⼊正题了~
2021全新Java学习路线图谱
从零基础⼊门到可以到⼯作的程度,⼤约准备五个⽉到六个⽉左右的时间;科班出⾝,已经学习过java、数据库等⼀些课程,根据个⼈情况,时间适当减少。
如果你想毕业后从事java开发,最好的准备时间是⼤三或者研⼆,其次是现在!
jquery在线免费学习技术ps: 我问过在培训机构培训过java的同学,基本上列出的学习点都覆盖了培训的内容,如果⾃⼰⾃制⼒强的话,就不需要花两万块钱去培训了~~
第⼀阶段:Java基础
建议⽤时:30天
重点知识点:数据类型、核⼼语法、⾯向对象、数组、集合、IO流、String/StringBuffer/StringBuilder、线程、并发、反射、泛型
学习Java开发,⾸先要学习java基础知识,尤其是校招的时候⾮常注重基础,即使没有项⽬也没关系,基础⼀定要打好,⼀般笔试以及⾯试的第⼀轮,对基础的考察是⽐较多的。
如果是⼩⽩⼊门,看视频是最有助于理解的,⽽且是学习最快的,后⾯再查缺补漏的时候,就看看书就好了,或者回头翻⼀下笔记。如果已经学过java基础的知识,也可以直接翻⼀遍书,复习复习即可。看视频的时候不能只听不练,建议⽤IDEA⼯具,更普遍⼀些。
推荐⼀本java基础的书籍:《JAVA核⼼技术 卷1》,⼊门书籍看这⼀本就够了,对照上⾯列出的知识点,吃透这些基础知识,就可以了,后⾯的Swing、applet等等就不需要看了。
第⼆阶段:数据库
建议⽤时:7天
重点知识点:基本的增删改查,SQL 命令,索引、存储过程;JDBC
主流的数据库有MySQL、Oracle、SQL Server等等,你只需要搞定⼀个就可以了,知识都是相通的,⼀通百通。⽬前公司⾥⽤到MySQL 的⽐较多,所以建议⼤家学习MySQL数据库。
MySQL数据库视频:
第三阶段:JavaWeb
建议⽤时:7天
重点知识点:HTML、CSS、JS、jQuery框架、Servlet程序、Filter过滤器、Listener、JSP页⾯、EL表达式、JSTL标签库、Cookie技术、Session会话、JSON使⽤、Ajax请求、Tomcat、maven等等
Java开发的岗位⼤多是Web开发,所以最好学⼀学前端的基础,虽然现在都是前后端分离的⽅式,但是你要懂前端界⾯和后端数据是怎样交互的,与前端⼯程师的沟通合作会更加顺利。另外,像⼀些⼩公司要求全栈,希望招来的后端开发也能做⼀些前端的⼯作,省⼀些⼈⼒成本。
第四阶段:框架
建议⽤时:20天
重点知识点:Spring、SpringMVC、SpringBoot、Mybatis
如果时间⾮常紧张,可以直接看Springboot和Mybatis,SpringBoot简化配置,⾮常好理解,这两个框架学完,就能看懂项⽬了,理解的深度肯定有限的。
下⾯这个视频着重介绍SpringBoot的使⽤和内部原理,包含微服务概念、配置⽂件、⽇志框架的使⽤、web开发、Thymeleaf模板引擎、Docker容器技术等等。
Mybatis的视频主要讲的是配置⽂件编写、动态SQL、MyBatis缓存机制、MyBatis-Spring整合、MyBatis逆向⼯程,MyBatis⾼级内容(MyBatis源码解析,MyBatis单/多插件运⾏机制,MyBatis四⼤对象⼯作原理,⾃定义TypeHandler、MyBatis存储过程&游标处理等)。
时间宽裕的情况下,Spring、SpringMVC都学习⼀下,搞懂 AOP 和 IOC 两个概念,以及Spring 中 bean 的作⽤域与⽣命周期、SpringMVC ⼯作原理,对理解Spring相关的框架⾮常重要。
从框架开始,就不⽤看书了,基础的知识多看看书,实践性强、应⽤性强的知识,多实践实践,看看源码,会⽐看书更有帮助,⽽且Spring 相关的书,也没看到写得好的。
管理系统的项⽬:
学完框架后,你可以做⼀个管理系统的项⽬了,给⼤家推荐⼀个管理系统的项⽬--若依,这是⼀个基于SpringBoot的权限管理系统,虽
然“若依”这个名字听起来很不科技感,但这个项⽬是⾮常好的,⾮常适合⼊门学习,有⽂档、有代码,社区⾥讨论的⼈也⽐较多。它有前后端不分离和前后端分离的两个版本。学到这⾥,你⼤概能看懂这个项⽬了~~
前后端不分离的版本:
经典技术组合:Spring Boot、Apache Shiro、MyBatis、Thymeleaf
前后端分离的版本:
前端采⽤Vue、Element UI。
后端采⽤Spring Boot、Spring Security、Redis & Jwt。
学到这⾥就可以满⾜⼯作的基本要求了,如果着急⼯作,跳过第五阶段和第六阶段,直接看第七阶段的⾯试准备。
第五阶段:其他热门技术
建议⽤时:50天
这⼀阶段属于拔⾼的部分。如果时间不够,着急⼯作的话,可以跳过这部分,进⼊下⼀阶段,直接项⽬的学习,回头再补。
Redis数据库学习:
第六阶段:java商城项⽬
建议⽤时:45天
商城项⽬整合的知识点⾮常多,⾮常全,这⼀个项⽬可以把前⾯学到的知识,全部应⽤⼀遍,所以准备⼀个商场项⽬来⾯试的话,⾯试官能问的点有很多,能深问的点也很多。其实应届⽣⼯作不需要特别丰富的项⽬经验,但如果⼀个项⽬都没有的话,肯定是不⾏的,⾯试官不知道问啥。
商城项⽬的视频(微服务+分布式+全栈+集+部署+⾃动化运维+可视化CICD):
第七阶段:Java⾯试准备
尚硅⾕出了三季的⾯试视频,我看过第⼆季,周阳⽼师讲的还不错,都是⼤⼚常考常问的点,视频链接如下。
第⼀季是JavaSE、SSM、框架⾼级、电商项⽬中的基础知识点。每个视频由浅⼊深的讲解,帮助⼤家更好地应对⾯试,并全⽅位掌握Java 的核⼼技术点。
除了上述关于Java开发知识的⾯试准备之外,还要刷⼀刷算法题。⼤⼚最爱考算法题,从笔试到每⼀轮的⾯试,都会考察的。为什么要刷题,因为⾯试官出的题基本上是在书上或者⽹上看到的,⾯试官也没有时间研究新题,所以多刷题命中率很⾼的。
推荐⼀本书,《剑指Offer》,⾯试中经常问到这本书上的算法题或者变形题,我刷了两遍,Python⼀遍,Java⼀遍,都整理了笔记,虽然这本书中的算法题随便⼀搜就能搜出⼤量博客,但是还是书中讲的详细,提供的解题⽅法多,带领读者思考。
最后再推荐⼀个学习⽹站,LeetCode,可能⼤家也都听说过,是⼀个刷算法题的⽹站,⽀持Java、Python、C++等各种语⾔,题⽬分为简单、中等和困难三种模式。
刚开始刷算法题,吃⼒是正常的,所以⼤家不要怀疑⾃⼰智商。知乎上经常看到这样的问题:“初刷leecode时会怀疑⾃⼰智商吗”“刷leetcode吃⼒正常吗”“leetcode刷了忘怎么办”...... 这都是正常的,除了天才和绝顶聪明的⼈之外,我们⼤家都⼀样,都会刷了忘忘了刷,也会做不出来需要看看答案。。。
我的建议是:
把简单题和中等题多刷⼀些,hard 的就不要勉强⾃⼰了,hard的不会也正常
按类型刷题,先刷数组,然后链表,然后⼆叉树、动态规划等等
做完⼀道题,不要以“通过”就满⾜,再想想有没有更优的解法,多想⼏遍加深印象
反复刷,尤其是⾯试前要反复刷,使⾃⼰在做题的⼀种氛围中
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论