Be a modern backend developer

计算机基础

  1. 数据结构:数组,字符串,队列,栈,链表,集合,哈希表,树,图
  2. 算法:排序,双指针,查找,分治,动态规划,递归,回溯,贪心,位运算,DFS,BFS,图
  3. 计算机组成原理:运算器,控制器,内存,IO,取指译码
  4. 操作系统:内存管理,进程管理,设备管理,IO管理
  5. 计算机网络:物理层,数据链路层,网络层,传输层,应用层,网络安全

《深入理解计算机系统》

Java入门

  1. java历史,特点
  2. 数据结构,基础语法
  3. java概念:方法,重载,抽象类,接口,枚举
  4. 面向对象:封装,继承,多态
  5. 常用类:String,Date,Object…
  6. 集合类:List,Set,Map
  7. 泛型
  8. 注解
  9. 异常处理
  10. 多线程
  11. IO流
  12. 反射
  13. JDK8新特性:Stream,Lambda,新Date,接口Default
  14. JVM
  15. JMM

《Java 核心技术卷 1》

Java企业开发基础

  1. MySQL:SQL语句,约束,索引,事务,锁机制,设计数据库表,性能优化
  2. JavaWeb:XML,JSON,Servlet,Filter,Listener,JSP,JSTL,Cookie,Session
  3. Spring:IOC,AOP,事务
  4. SpringMVC:集成配置过程,MVC模式,请求与响应,执行过程,Restful风格,拦截器
  5. Mybatis:集成配置过程,动态SQL,缓存,逆向工程
  6. Mybatis Plus:通用CRUD,条件构造器,代码生成器,插件扩展
  7. SpringBoot:常用注解,资源整合,高级特性,本地热部署
  8. Spring Security:用户认证,权限管理,和Shiro比较
  9. Maven:依赖管理,父子工程,私服搭建
  10. 开发代码规范:阿里巴巴Java开发手册
  11. Git
  12. Linux
  13. 前端基础:HTML,CSS,JavaScript,Vue

Java企业开发进阶

  1. 软件工程理论知识
  2. 设计模式
  3. 缓存
  4. 消息队列
  5. Nginx
  6. Netty
  7. 微服务
  8. 容器
  9. CI/CD

项目实战

  1. 自己开始做项目
  2. 实际开发过程中对各种工具类的使用
  3. 熟悉开发工具IDEA,插件

Java高级

  1. 并发编程
  2. JVM:把java往计算机低层探究
  3. 架构设计