2021 Java后端技术体系
-按照学习顺序梳理
-韩顺平
第一部分:java基础
变量
控制结构
顺序结构
分支
循环
OOP
封装
继承
多态
数组
Java API
异常和处理
泛型
IO
反射
网络通信
第二部分:Java高级
Java多线程/高并发
并发基础
互斥同步
非阻塞同步
指令重排
synchronized
volatile
线程
锁
自旋锁
偏向锁
可重入锁
线程池
并发容器
JUC
executor
collections
atomic(原子类)
tools(CountDownLatch,Exchanger, ThreadLocal, CycllcBarrler)
数据结构和算法
数据结构
数组(稀疏数组)
队列
栈
链表
树
散列
堆
图
算法
排序(8种)
查找
分治
动态规划(背包问题)
回溯(骑士问题)
贪心算法
KMP
Prim
Kruskal
floyd-最短路径
迪杰斯特拉(dij)-最短路径
设计模式(23种)
单例模式
观察者模式
工厂模式
适配器模式
装饰者模式
代理模式
模板模式
职责链模式
其他(组合模式,桥接模式,原型模式...)
JVM
JVM体系
类加载过程/机制
双亲委派机制/沙箱安全机制
JVM(java内存模型)
字节码执行的过程/机制
GC(垃圾回收算法)
JVM性能监控和故障定位
JVM调优
第三部分: JavaWEB
前端基础
HTML
CSS
JavaScript
Ajax
Jquery
前端框架(可以弱化)
VUE
React
Angular
bootstrap
Node.js
Java web 后端
Tomcat
Servlet
JSP
第四部分:主流的框架和项目管理
Linux(操作系统,必学)
Nginx(做反向代理的WEB服务器)
SSM
Spring(轻量级的容器框架)
SpringMVC(分层的web开发框架)
MyBatis(持久化框架)
项目管理
Maven
Git&Github
SVN
数据库
Redis
MySql
Oracle
其他框架
WebService(即SOA)
Activiti(工作流框架)
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(可视化)
Zookeeper(一致性服务:比如:配置维护,域名维护,分布式同步)
第六个部分:DevOps(开发运维一体化) 自动化部分管理项目,解决CI/CD
k8s(让部署容器化的应用简单高效)
普罗米修斯(prometheus)[系统监控和报警]
Jenkins(监控持续的工作[部署,集成,交付])
Habor(容器的镜像仓库)
GitLab
项目工程代码质量检测(sonarqube)
第七个部分:大数据技术(可以弱化)
Hadoop
Hive
Impals
spark
flink
第八个部分:项目
电商
金融
教育
直播
CRM,ERP
第九个部分:大厂的高频面试题
第十个部分:底层源码/内核研究
编程基础的扩展(科班
计算机网络
操作系统
编译原理
离散数学
数值分析
计算机组成原理
汇编原理