Java后端学习路线梳理

前言——本科软件工程专业毕业生,英硕研究生在读。想在这里留下一些学习和思考的痕迹,希望能对日后的自己有所帮助!

我可能会写一些学习笔记和总结,发一些实验过程记录,也会写写题解和刷题过程中引发的思考等。想要系统地补充和扩充知识,则需要系统地梳理学习路线。我打算以后从事Java后端开发,所以参考了知乎,B站上一些大佬的经验分享后,做出了下面一些关于Java后端学习路线的总结。

简单来说

学好Java,并想找到一份不错的工作大体上需要掌握以下五个部分:

  • 技术栈,通俗来说就是Java八股文
  • 计算机基础——操作系统,计算机网络,数据库等
  • 数据结构与算法
  • 项目
  • 实习

详细来说

①编程基础——

一、Java语言

1.语言基础:
  • 基础语法
  • 面向对象
  • 接口
  • 容器
  • 异常
  • 泛型
  • 反射
  • 注解
  • I/O
2.JVM
  • 类加载机制
  • 字节码执行机制
  • JVM内存模型
  • GC垃圾回收
  • JVM性能监控与故障定位
  • JVM调优
3.并发、多线程
  • 并发编程基础
  • 线程池
  • 并发容器
  • 原子类
  • JUC并发工具类

二、数据结构和算法

1.数据结构
  • 字符串
  • 数组
  • 链表
  • 二叉树
  • 堆、栈、队列
  • 哈希
2.算法
  • 查找
  • 排序
  • 贪心
  • 分治
  • 动态规划
  • 回溯

三、计算机网络

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

四、数据库/SQL

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

五、操作系统

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

六、设计模式

  • 单例
  • 工厂
  • 代理
  • 策略
  • 模板方法
  • 观察者
  • 适配器
  • 责任链
  • 建造者

②研发工具——

一、集成开发工具

  • Eclipse
  • Intellij IDEA
  • VS Code

二、Linux系统

  • Linux常用命令
  • 基本Shell脚本

三、代码管理工具

  • Git
  • SVN

四、项目管理/构建工具

  • Maven
  • Gradle

③应用框架——

一、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
  • Soir

六、分布式/微服务

  • 服务发现/注册
  • 网关
  • 服务调用(负载均衡)
  • 熔断/降级
  • 配置中心
  • 认证和鉴权
  • 分布式事务
  • 任务调度
  • 链路追踪与监控
  • 日志分析与监控

七、虚拟化/容器化

  • 容器技术
    - Docker
  • 容器编排技术
    - Kubernetes
    - Swarm

④部分前端——

一、基础套餐

  • 三大件
    - HTML
    - JavaScript
    - CSS
  • 基础库
    - JQuery
    - Ajax

二、模板框架

  • JSP/JSTL
  • Thymeleaf
  • FreeMarker

三、组件化框架

  • Node

  • Vue

  • React

  • Angular

    结语:综上所述,可以看出,路还很长,继续不断努力吧!
    
posted @ 2021-10-26 03:54  Vinccode  阅读(769)  评论(0编辑  收藏  举报