Java Learning Path

入坑Java开发的学习之路

基础知识

  • 编程语言: Java Python C
  • 基本算法
  • 基本网络知识: TCP/IP HTTP HTTPS
  • 基本设计模式

工具方面

  • 操作系统: Linux (CentOS/Ubuntu…)
  • 代码管理: SVN / Git
  • 持续集成(CI/CD): Jenkins
  • Java项目管理工具: Maven / Gradle

框架方面

应用层框架

  • ssh: spring + structs + hibernate
  • ssm: spring + spring mvc + mybatis
  • spring boot

中间件

  • MQ 消息队列
  • RPC 通信框架 gRPC thrift dubbo spring cloud
  • Elasticsearch 数据库 搜索引擎

数据库

  • SQL: MySQL / Postgre SQL
  • NoSQL: Redis Memcached mongoDB elasticsearch

架构方面

分布式/微服务架构

  • spring cloud
  • dubbo
  • RPC通信

虚拟化/容器化

  • Docker
  • k8s kubernetes

关注源码/性能

  • JDK源码以及部分设计思想
  • Spring源码
  • JVM 细节与排错