编程基础

语言基础

JAVA语言

  • 基础语法
  • 面向对象
  • 接口
  • 容器
  • 泛型
  • 反射
  • 注解
  • I/O
  • 图形化(如Swing)

JDK核心源码分析

  • 类源码分析
    • Object类
    • String类
    • Arrays类
    • ArrayList类
    • LinkedList类
    • HashMap类
    • HashSet类
    • LinkedHashMap类
    • TreeMap类
  • 异常源码分析
  • 线程池源码分析
  • 多线程源码分析
  • 反射源码分析
  • Java深拷贝和浅拷贝

JVM

  • 类加载机制
  • 字节码执行机制
  • JVM内存模型
  • GC垃圾回收
  • JVM性能监控与故障定位
  • JVM调优

并发/多线程

  • 并发编程基础
  • 线程池
  • 并发容器
  • 原子类
  • JUC并发工具类

数据结构和算法

设计模式

操作系统原理

  • 进程/线程
  • 并发/锁
  • 内存管理和调度
  • I/O原理

数据库/SQL

  • SQL语句书写
  • SQL语句优化
  • 事务及隔离级别
  • 索引

计算机网络

  • ARP协议
  • IP/ICMP协议
  • TCP/UDP协议
  • DNS/HTTP/HTTPS协议
  • Session/Cookie

研发工具

集成开发环境

  • Intellij IDEA
  • VS Code

Linux操作系统

代码管理工具

项目管理/构建工具

  • Maven
  • Gradle

应用框架

后端

Spring系列

  • Spring
    • IOC
    • AOP
  • Spring MVC
  • Spring Boot
    • 自动配置、开箱即用
    • 整合Web
    • 整合数据库
    • 整合权限
    • 整合各种中间件(缓存、MQ、RPC框架、NIO框架等)

服务器软件

  • Web服务器
  • 应用服务器
    • Tomcat
    • Jetty
    • Undertow

中间件

缓存

消息队列

RPC框架

数据库

  • ORM层框架
  • 连接池
    • Druid
    • HikariCP
    • C3P0
    • BoneCP
  • 分库分表
    • MyCat
    • Sharding-JDBC
    • Sharding-Sphere

搜索引擎

分布式/微服务

服务发现/注册

  • Eureka
  • Consul
  • Zookeeper
  • Nacos

网关

服务调用(负载均衡)

熔断/降级

配置中心

认证和鉴权

分布式事务

  • JTA接口
    • Atomikos组件
  • 2PC、3PC
  • XA模式
  • TCC模式
    • tcc-transaction
    • ByteTCC
    • EasyTransaction
    • Seata
  • SAGA模式
  • LCN模式
    • tx-lcn

任务调度

  • Quartz
  • Elastic-Job

链路追踪与监控

日志分析与监控

  • ELK
    • ElasticSearch
    • Logstash
    • Kibana

虚拟化/容器化

运维知识

  • 持续集成/持续发布
  • CDN加速
  • 代码质量检查
    • Sonar
  • 日志收集/分析
    • ELK

前端

基础三大件

  • HTML
  • JavaScript
  • CSS

模板框架

  • JSP/JSTL
  • Thymeleaf
  • FreeMarker

组件化框架

  • Vue
  • React
  • Angular
  • NodeJs