现在互联网环境这么差,Java还能学吗? 学Java还能找到工作吗?
大家好呀, 我是程序员回家养猪, 一个专升本, 三段实习经历拿下大厂SSP offer的程序员博主.
关于我的个人经历, 之前文章有聊过了。
虽然现在Java开发的行情确实比以前要差很多,但是差并不是光Java开发差,是所有行业都变差了。综合来看,Java后端开发依旧是性价比非常高的一个方向。
那么这一期来聊聊Java后端开发的学习路线吧。
首先要明确你的目标是什么,你是要进大厂还是要进中厂?还是要进小厂?
大厂有大厂的技术要求,小厂有小厂的技术要求。
进大厂所需要学的知识肯定是和进小厂不一样的。进大厂的学习路线肯定也是和进小厂不一样的。
特点
这一篇学习路线和其他学习路线不太一样, 主要有以下特点
-
根据目标定计划
- 小厂(入门阶段)怎么学,中厂(进阶阶段)怎么学,大厂(高级阶段)怎么学
-
快,短而精, 去掉了一些非必须的知识
- 短并不意味着要跳着学, 学习曲线十分平滑, 不会学的很难受
-
详细到知识点, 哪些知识点是哪个阶段的重点
-
每个点都会给出学习建议
-
必看的视频推荐, 项目推荐 (都是精品中的精品)
- 一条线, 不会告诉你既可以学这个又可以学那个, 既可以看这个又可以看那个.
- 不会给初学者搞晕, 只给你一条路径, 一条线学下去就行了
b站也有学习路线讲解视频
【大厂SSP的Java学习路线,零基础,分阶段,极简的自学编程指南,全网最全面最贴心】 https://www.bilibili.com/video/BV1ExmhYVERA/?share_source=copy_web&vd_source=dbae968b96c316f9084e2b52adeabb5d
小厂 - Java后端学习路线
重点与目标
- 基本的后端crud开发能力
- redis, mq等中间件的基本使用
- 简单八股文
学习路线
完整的学习路线思维导图太大了, 截图放不下. 文章末尾会放完整的学习路线思维导图和编程大礼包的领取方式, 直接领取即可, 都是免费的.
笔记工具
- 本地笔记: typora
- 云笔记: 语雀
JavaSE
- 必学
- 知识点
- 基本语法
- 面向对象
- 常用工具类
- 集合与泛型
- 异常处理
- 学习建议
- 必学知识, 多写代码, 多写案例
- 理解编程的基本语法, 理解面向对象的基本思想
- 知识点
- 了解
- 知识点
- IO流
- 多线程
- 注解
- 反射
- java8新特性
- 学习建议
- 了解即可,知道有这个东西,知道干啥用的即可
- 需要用的时候再查
- 知识点
- 推荐课程
MySQL
- 知识点
- 表操作DDL
- 增删改DML
- 查询
- 单表查询
- 复杂查询
- 多表查询
- 常用函数
- 约束
- 事务
- 推荐课程
- 学习建议
- 视频不必全部看完, 只学基础篇即可.
- 非常重要, 基本的crud和事务一定要学明白, 多敲多写
后端开发
知识点
- 了解前端
- 构建与包管理工具: maven
- JavaWeb
- ajax, json, xml
- Servlet
- Filter
- Cookie
- Session
- Springboot
- Spring
- IOC
- AOP
- 事务相关
- 常考八股
- SpringMVC
- MVC
- 注解使用, 请求响应处理
- Restful
- 拦截器
- 整合其他框架
- MyBatis
- CRUD
- 分页查询
- 多表查询
- 动态sql
- Mybatis plus
- MyBatis
- Spring
学习建议
- 后端最核心的课程, 干活必用的工具
推荐课程
- 黑马程序员JavaWeb开发教程
- https://www.bilibili.com/video/BV1m84y1w7Tb/?spm_id_from=333.337.search-card.all.click&vd_source=42db8244c1ec9b601d4410f49b3f3477
项目
瑞吉外卖
- SpringBoot+Mybatis的crud项目
- 版本管理工具 - git
- redis
- linux
- nginx
推荐课程
学习建议
- 一定要动手敲代码, 解决开发中的问题
- 学习项目搭建, 开发, 部署的整个流程
- 学到这里恭喜你已经具备了企业开发的基本能力。这时候其实可以尝试找一个mini厂去实习了
版本管理工具
git
- 学习建议
- 必学, 会用即可, 不必深入学习
计算机基础
数据结构
- 线性表/数组
- 链表
算法
- 排序
- 冒泡排序
- 查找
- 二分查找
设计模式
- 单例
- 工厂
学习建议
- 小厂对计算机基础考察很少
- 只需要学习基本的就够用了
中间件
Redis
- 知识点
- 基本命令
- redis基础数据结构
- 缓存
- 缓存击穿
- 缓存穿透
- 缓存雪崩
- 淘汰机制与持久化策略
- 缓存与数据库一致性的问题
- 推荐课程
- 学习建议
- 视频只看基础篇和实战篇即可
- 面试重点, 一定要学明白, 想明白
MQ - RabbitMQ
-
知识点
- 基本使用
- 解耦, 异步, 削峰
-
推荐课程
-
学习建议
- 视频不必全部看完, 看标记知识点, 基本会用即可
运维相关
- linux
- 基本命令
- 会看日志
- vim使用
八股文
- ConcurrentHashMap
- Spring系列八股文
- MySQL, Redis, MQ简单八股文
学习建议
- 面试常考内容, 对入门阶段的同学要求不会很高, 常见的八股文能说出来即可
中厂 - Java后端学习路线
重点与目标
- mysql, redis, mq等中间件高级篇
- jvm juc与常见八股文的学习
- 基本的计算机基础知识
- 简单算法题
学习路线
完整的学习路线思维导图太大了, 截图放不下. 文章末尾会放完整的学习路线思维导图和编程大礼包的领取方式, 直接领取即可, 都是免费的.
前置知识
- 必须先确保自己学完了 小厂(入门)-Java学习路线
JavaSE
- 多线程
- java8新特性
- 反射
MySQL
知识点
- 事务
- 存储引擎
- 索引
- SQL优化
推荐课程
- 黑马程序员 MySQL (基础篇)
- https://www.bilibili.com/video/BV1Kr4y1i7ru/?spm_id_from=333.999.0.0&vd_source=42db8244c1ec9b601d4410f49b3f3477
学习建议
- 视频从进阶篇开始学完标记为2的知识点即可
- 非常重要, 面试的高频考点
中间件
Redis
- 知识点
- 缓存
- 缓存击穿
- 缓存穿透
- 缓存雪崩
- 分布式锁
- 分布式会话
- 缓存与数据库一致性的问题
- 缓存
- 推荐课程
- 学习建议
- 视频只看实战篇与高级篇即可
- 面试重点, 一定要学明白, 想明白
MQ
-
RabbitMQ
- 消息的可靠性
- 死信队列/延迟队列/惰性队列/...
-
RocketMQ
- 选学
-
Kafka
- 选学
-
推荐课程
Nginx
- 了解即可, 不必太深入学习
项目
黑马点评redis (实战篇与高级篇)
-
学习建议
- 黑马点评不仅是讲redis的课程, 而且是极好的项目
- 视频只看实战篇与高级篇即可, 学会了项目亮点就有了
- stream相关可以直接用MQ代替, 不必完全按照课程写
计算机基础
数据结构
- 栈
- 队列
- 哈希表
算法
- 排序
- 堆排序
- 归并排序
- 快速排序
- 查找
- 二分查找
- 分治
- 贪心
- 回溯
- 搜索
- bfs
- dfs
操作系统
- 基础知识
- 用户态/内核态
- 系统调用, 中断, 异常, 陷入
- 进程与线程
- 进程与线程比较
- 进程三种状态
- 进程通信
- 进程调度算法
- 同步与互斥
- 死锁
计算机网络
- 网络分层
- OSI分层
- TCP/IP分层
- 数据链路层
- MAC地址
- ARP协议
- 网络层
- IP相关
- 传输层
- UDP特点
- TCP
- 三次握手, 四次挥手
- 可靠传输
- 流量控制
- 拥塞控制
- 应用层
- DNS
- HTTP
- FTP
计算机组成原理
- 二进制
- 进制转换
- 源码反码补码
设计模式
- 单例
- 工厂
推荐资料
- 小林coding
- https://xiaolincoding.com/
Java底层
JVM
- 内存结构
- 垃圾回收
- 类加载
JUC
- 锁
- synchronized
- ReentrantLock
- CAS
- AQS
- 线程池
- 并发工具类
- ConcurrentHashMap
- ...
运维相关
linux
- vim使用
- shell脚本
八股文
MySQL相关八股文
Redis相关八股文
MQ相关八股文
并发与锁相关八股文
学习建议
- 面试常考内容, 一定要熟练掌握
- 不要死记硬背, 理解记忆, 要想明白在项目中是怎么用的
推荐资料
- 小林coding
- javaguide
算法题
学习算法思想: 代码随想录
面试常考题: code top
学习建议
- 这个阶段算法题考的比较基础, 不必学太深入
- 建议每天刷一两道简单算法题, 了解基本的算法思想, 学会写基本算法题即可
大厂 - Java后端学习路线
由于目前文章太长了, 所以大厂的Java学习路线会放在下一期. 敬请期待吧.
编程大礼包和资料
关注公众号: 程序员回家养猪
发送: "Java后端开发学习路线"
即可领取全部学习路线思维导图(pdf版和xmind版)和编程大礼包
编程大礼包内含typora(pojie版), idea(pojie版), jdk, mysql等常用安装包.
有些同学可能在想领个资料为什么这么麻烦, 因为都是个人原创的学习路线. 创作, 搜集资料十分不易, 所以还是希望如果对你有帮助的话能支持一下.