Java后端学习路线
Java后端技术阶段概括
java后端技术路线是一个相对完整的学习路线,所以大家不用把所有的都学完再去找工作,不用这样子,其实你只要学到第四个,第五个阶段,再做一些项目,再刷一些题,其实就可以开始准备找工作了
第一部分: Java基础
变量、
控制结构
顺序
分支
循环
OOP
封装
继承
多态
数组
Java API
异常和处理
集合
泛型
IO
反射
网络通信
第二部分: Java高级
多线程/高并发(面试)
并发基础
互斥同步、非阻塞、指令重排、synchronized、volatile
线程
锁
自旋锁、偏向锁、可重入锁
线程池、并发容器
JUC(Java提供的并发工具)
executor
collections
locks
atomic(原子类)
tools(CountDownLatch,Exchanger,ThreadLocal,CyclicBarrier)
数据结构和算法
数据结构(八种常见的)
数组(稀疏数组)、队列、栈、链表、树、散列、堆、图
算法(常见的)
排序、查找、分治、动态规划(最经典的:背包问题)、回溯(骑士周游问题)、贪心算法、KMP、Prim、Kruskal、最短路径(floyd、迪杰斯特拉)
设计模式(常用的八种)
单例模式、观察者模式、工厂模式、适配器模式、装饰者模式、代理模式、模板模式、职责链模式、其他(组合模式、桥接模式、原型模式)
Jvm
JM体系、类加载过程/机制、双亲委派机制/沙箱安全机制、JMM(Java内存模式)、字节码执行的过程/机制、GC(垃圾回收算法)、JVM性能监控算法和故障定位、JVM调优
第三部分: JavaWEB
前端基础
Html、Css、JavaScript、Ajax、Jquery
前端框架(做后台可以对此部分弱化)
Vue、React、Angular、Bootstrap、Node.js
Java Web后端
Tomcat、Servlet、JSP
第四部分: 主流框架和项目管理
Linux(必学,必会)
Nginx(做反向代理)
SSM
Spring(轻量级的容器框架)
SpringMVC(分层的Web框架)
MyBatis(持久化框架)
项目管理
Maven
Git&GitHub
SVN
数据库
Redis
MySql
Oracle
其他框架
WebService(面向服务编程的框架,简称SOA)
Activity(工作流框架/引擎)
Shiro(安全框架)
Spring Security(安全框架)
JPA(持久化)
SpringData(持久层的通用解决方案)
第五部分: 分布式 微服务 并行架构
Netty
Dubbo(RPC框架)
FastDFS(分布式的文件系统)
Docker(应用容器引擎)
Spring家族
SpringBoot
SpringCloud
Nacos(阿里巴巴开发的、支持服务发现、配置管理的组件)
Seata(阿里巴巴开发的、分布式事务的中间件)
Sentinel(阿里巴巴开发的、流量控制、熔断、系统负载保护)
GateWay(网关、限流、日志、监考、鉴权)
OpenFeign(服务间调用)
搜索引擎
ELasticSearch
Solr
中间件
MyCat
数据库中间件、分库分表
消息中间件
ActiveMQ
RabbitMQ
KafKa
日志分析与监控(ELK)
ElasticSearch(搜集、存储数据)
LogStash(分析日志)
Kibana(可视化)
Zookeepr(一致性服务:比如配置维护、域名维护、分布式同步)
第六部分 : DevOps(开发运维一体化,解决CI/CD)
K8s
让部署容器化的应用简单高效
普罗米修斯(Prometheus)
系统监控和报警
Jenkins
监控持续的工作(部署、继承、交付)
Harbor(容器的镜像仓库)
GitLab(代码托管、管理)
SonarQube(项目工程代码质量检测)
第七部分 : 大数据(可以弱化)
Hadoop
Hive
Impals
spark
flink
第八部分: 项目
至少做三个以上的项目:
电商、金融、教育、直播、CRM/ARP
第九部分: 大厂的高频面试题
第十部分: 底层源码/内核研究
编程基础拓展
计算机网络
操作系统
编译原理
离散数学
数值分析
计算机组成原理
汇编语言
更多推荐
bilibili 韩顺平Java后端学习路线
发布评论