韩顺平老师的Java学习路线

619 阅读4分钟

Java 后端技术体系梳理

第一部分:Java 基础

第一部分:Java基础

  • 第一阶段:内容清单

    • Java概述
    • 变量
    • 运算符
    • 控制结构
    • 数组,排序,查找
    • 面向对象编程(基础)
    • 面向对象编程(中级)
    • 项目&学以致用||编程之乐
    • 零钱通
    • 房屋出租系统
    • 迷宫问题
    • 八皇后问题
    • 汉诺塔问题
    • 目标:建立编程思想
  1. Java概述
  • 如何快速学习Java技术
  • Java历史
  • Java特点
  • Sublime
  • Java运行机制
  • JDK
  • 转义字符
  • Java开发规范
  • JavaAPI
  1. 变量
  • 数据类型
  • 变量的基本使用
  • 数据类型转换
  1. 运算符
  • 运算符介绍
  • 算数运算符
  • 关系运算符
  • 逻辑运算符
  • 赋值运算符
  • 三元运算符
  • 优先级
  • 二进制
  • 位运算符
  1. 控制结构
  • 顺序
  • 分支(if~else, switch)
  • 循环(for,while,do while)
  • Break
  • Continue
  • Return
  1. 数组、排序、查找
  • 数组
  • 排序
  • 查找
  1. 面向对象编程(基础)
  • 类和对象
  • 成员方法
  • 成员方法传参机制
  • Overload
  • 可变参数
  • 作用域
  • 构造器
  • this
  1. 面向对象编程(中级)
  • 访问修饰符
  • 封装
  • 继承
  • 多态
  • Super
  • Overwrite
  • Object类详解
  • 断点调试
  • 第二阶段: 内容清单

    • 提升编程能力
  • 第三阶段:内容清单

    • 分析需求,提升代码能力
  • 变量

  • 控制结构

    • 顺序结构
    • 分支
    • 循环
  • OOP

    • 封装
    • 继承
    • 多态
  • 数组

  • Java API

  • 异常和处理

  • 集合

  • 泛型

  • IO

  • 反射

  • 网络通讯

第二部分:Java 高级

1.Java 多线程/高并发

  • 并发基础

    • 互斥同步
    • 非阻塞同步
    • 指令重排
    • Synchronized
    • volatile
  • 线程

    • 自旋锁
    • 偏向锁
    • 可重入锁
  • 线程池

  • 并发容器

  • JUC

    • Executor
    • Collections
    • atomic(原子类)
    • tools(CountDownLatch,Exchanger,ThreadLocal,CyclicBarrier)

2.数据结构与算法

  • 数据结构(8种数据结构)

    • 数组(稀疏数组)
    • 队列
    • 链表
    • 散列
  • 算法

    • 排序(8种)

    • 查找

    • 分治

    • 动态规划(背包问题)

    • 回溯(骑士周游问题)

    • 贪心算法

    • KMP

    • Prim

    • 克鲁斯卡尔算法 kruskal

    • 佛洛依德算法 floyd-最短路径

    • 迪杰斯特拉算法-最短路径

3.设计模式(23种)

  • 单例模式
  • 观察者模式
  • 工厂模式
  • 适配者模式
  • 装饰者模式
  • 代理模式
  • 模板模式
  • 职责链模式
  • 其它(组合模式,桥接模式,原型模式……)

4.JVM

  • JVM 体系
  • 类加载过程/机制
  • 双亲委派机制/沙箱安全机制
  • JMM (Java内存模式)
  • 字节码的执行过程/机制
  • GC(垃圾回收算法)
  • JVM的性能监控和故障定位
  • JVM调优

第三部分:Java Web

1.前端基础

  • HTML
  • CSS
  • JavaScript
  • Ajax
  • Jquery

2.前端框架

前端框架可以弱化

  • Vue.js
  • React
  • Angular
  • Bootstrap
  • Node.js

3.Java Web后端

  • Tomcat
  • Servlet
  • JSP

第四部分:主流框架和项目管理

  1. Linux 操作系统(必学必会)

  1. Nginx(做反向代理的Web服务器)

  1. SSM

  • Spring(轻量级的容器框架)
  • SpringMVC(分层的web开发框架)
  • Mybatis(持久化框架)
  1. 项目管理

  • Maven
  • Git&Github
  • SVN
  1. 数据库

  • Redis
  • MySQL
  • Oracle
  1. 其他框架

  • WebService [即SOA]
  • Activiti (工作流框架/引擎)
  • Shiro(安全框架)
  • Spring Security(安全框架)
  • JPA (持久化)
  • SpringData(是持久层的通用型解决方案)

第五部分:分布式 微服务 并行架构

  • Netty

  • Dubba(阿里巴巴不开源的RPC框架)

  • FastDES(分布式的文件系统)

  • Docker(应用容器引擎)

  • Spring家族

    • SpringBoot

    • SpringCloud(组件库,组件很多)

      • Nacos(阿里巴巴 服务发现,配置,管理)
      • Seate(阿里巴巴 分布式事务的中间件)
      • Sentinel(阿里巴巴,流量控制熔断,系统负载保护)
      • GateWay(网关 限流,日志,监控,鉴权)
      • OpenCloud(服务间调用)

搜索引擎

ElasticSearch

Solr

中间件

  • MyCat(数据库中间件,分库分表)

消息中间件

  • ActiveMQ
  • RabbitMQ
  • Kafka

日志分析与监控(ELK)

  • ElasticSearch (搜集,存储数据)
  • LogStash(分析日志)
  • Kibana(可视化)

Zookeepr(一致性服务:比如 配置维护,域名维护,分布式服务)

第六部分:开发运维一体化技术(DevOps)

|| 自动化部署管理项目

  • k8s(让部署容器化的应用简单高效)
  • 普罗米修斯(Prometheus)【系统监控和报警】
  • Jenkis(监控持续的工作【部署,集成,交付】)
  • Harbor(容器的镜像仓库)
  • Gitlab
  • 项目工程代码质量检测(SonarQube)

第七部分:大数据技术(可以弱化)

  • Hadoop
  • Hive
  • Implas
  • Sqark
  • Fink

第八部分:项目

  • 电商
  • 金融
  • 教育
  • 直播
  • CRM,ERP
  • 三个比较大的项目

第九部分:大厂的高频面试题

一些详细的Java学习资料

javaguide.cn/

github.com/gupaoedu-to…

github.com/gupaoedu-to…

第十部分:底层源码/内核研究

编程基础的扩展(科班)

  • 计算机网络
  • 操作系统
  • 编译原理
  • 离散数学
  • 数值分析
  • 计算机组成原理
  • 汇编语言

image.png

韩顺平老师的学习资料,可以找我免费获取。 hogmppaugb.feishu.cn/wiki/O2u0wh…