个人的Java学习路线(成神之路)
**JAVA成神之路
大学没好好学,找工作两手空空
本文是个人JAVA学习大纲,以及进程,会持续更新
小菜鸟一个,期待一起共同进步**
新兴的各种技术难免让人眼花缭乱,但是要记住一切的框架、代码库都是基础代码发展来的。Java发展几十年,淹没在历史长河中的不知几何,但是基础的代码、逻辑恒久不变。---------写在前面,谨以警醒自己学习过程中不拘泥于表象,重基础!重思想!
Java学习路线
编程基础
JAVA基础
-
Java语言
- 基础语法
- 面向对象
- 接口
- 容器
- 异常
- 泛型
- 反射
- 注解
- I/O
- 图像化(Swing)
-
JVM
- 类加载机制
- 字节码执行机制
- JVM内存模型
- GC垃圾回收
- JVM性能监控与故障定位
- JVM调优
-
并发/多线程
- 并发编程基础
- 线程池
- 锁
- 并发容器
- 原子类
- JUC并发工具类
数据结构和算法
-
数据结构
- 字符串
- 数组
- 链表
- 二叉树
- 堆、栈、队列
- 哈希
-
算法
- 查找
- 排序
- 贪心
- 分治
- 动态规划
- 回溯
计算机网络
- ARP协议
- IP/ICMP协议
-
TCP/UDP协议
- 面向链接
- DNS/HTTP/HTTP协议
- Session/Cookie
数据库/SQL
- SQL语句书写
- SQL语句优化
- 事务以及隔离级别
- 索引
- 锁
操作系统
- 进程/线程
- 并发/锁
- 内存管理和调度
- I/O原理
设计模式
- 单例
- 工厂
- 代理
- 策略
- 模板方法
- 观察者
- 适配器
- 责任链
- 建造者
开发工具
集成开发环境
- Eclipse
- IDEA
- VS
Linux系统
- 常用命令
- 基本Sheel脚本
代码管理工具
- Git
- SVN
项目管理/构建工具
- Maven
- Gradel
需要的前端技术
基础
-
三大件
- HTML
- JavaScript
- CSS
-
基础库
- jQuery
- Ajax
模板框架
- JSP/JSTL
- Thymeleaf
- FreeMarket
组件化框架
- Node
- Vue
- React
- Angular
运维知识(了解)
Web服务器
- Nginx
应用服务器
- Tomcat、Jetty、Undertow
CDN加速
持续集成/持续发布
- Jenkins
代码质量检查
- sonar
日志收集/分析
- ELK
应用框架
Spring套餐
-
Spring
- IOC
- AOP
- Spring MVC
-
Spring Boot
- 自动配置、开箱即用
- 整合Web
- 整合数据库(事务问题)
-
整合权限
- Shiro
- Spring Security
-
整合各种中间件
- 缓存、MQ、Rpc框架、NIO框架等
服务器软件
-
Web服务器
- Nginx
-
应用服务器
- Tomcat
- Jetty
- Undertow
中间件
-
缓存
-
Redis
- 5大数据类型
- 事务
- 消息通知
- 管道
- 持久化
- 集群
- memcache
-
-
消息队列
- RocketMQ
- RabbitMQ
- Kafka
-
RPC框架
- Dubbo
- gRPC
- Thrift
- Spring Cloud
- Netty
数据库
-
ORM层框架
- Mybatis
- Hibernate
- JPA
-
连接池
- Druid
- Hikaricp
- C3p0
-
分库分表
- MyCat
- Sharding-JDBC
- Sharding-Sphere
搜索引擎
- ElasticSearch
- Solr
分布式/微服务
-
服务发现、注册
- Eureka
- Consul
- Zookeeper
- Nacos
-
网关
- Zuul
- GateWay
-
服务调用(负载均衡)
- Ribbon
- Feign
-
熔断、降级
- Hystrix
-
配置中心
- Config
- Apollo
- Nacos
-
认证和鉴权
- Shiro
- Spring Security
- OAuth2
- SSO
-
分布式事务
-
JTA接口
- Atomikos组件
- 2PC、3PC
- XA模式
-
TCC模式
- tcc-transaction
- ByteTCC
- EasyTransaction
- Seata
-
SAGA模式
- ServiceComb
- Seate
-
LCN模式
- tx-lcn
-
-
任务调度
- Quartz
- Elastic-Job
-
链路追踪与监控
- Zipkin
- Seluth
- Skywalking
-
日志分析与监控
-
ELk
- ElasticSearch
- Logstash
- Kibana
-
虚拟化/容器化
-
容器技术
- Docker
-
容器编排技术
- Kubernetes(k8s)
- Swarm
XMIND
对学习过的知识进行归纳整理
(随手在草稿纸上画的,后期再优化吧,懒。。。)