从零讲JAVA ,给你一条清晰地学习道路!该学什么就学什么!!
发布日期:2021-05-06 22:20:52 浏览次数:20 分类:精选文章

本文共 2444 字,大约阅读时间需要 8 分钟。

1. 计算机基础

1.1 数据结构基础

  • 主要学习内容:向量、链表、栈、队列和堆、词典、树、二叉搜索树、图(有向图、无向图)、树的前后、中后、层次、之字形、最短路、KMP等字符串算法。
  • 熟悉内容:二叉搜索树的A、B、C类、二叉搜索、九大排序、树的最短路径。
  • 掌握技能:广度优先搜索、深度优先搜索、最短路径算法、最小生成树算法。

1.2 操作系统

  • 主要学习内容:进程与线程的区别、进程间通信方式、进程调度算法、存储管理、虚拟内存、分页与分段、内存管理、文件系统、链式结构、索引结构、死锁原因、避免与解除方法、Linux基本命令、Shell脚本编程与Python脚本编程。
  • 熟悉内容:文件系统的链式结构与索引结构、进程调度算法、内存管理机制、死锁处理方法。

1.3 计算机网络

  • 主要学习内容:网络分层模型(五层、七层、四层)、网络层(IP地址分类、子网划分、超网、ARP协议、ICMP协议)、运输层(端口、UDP协议、三次握手、四次断开)、应用层(常用协议及端口、底层协议)、TCP/IP协议对拥塞控制、滑动窗口机制。
  • 熟悉内容:TCP连接建立过程、三次握手、TCP流量控制与拥塞控制。

1.4 基础算法

  • 主要学习内容:大O等记号、动态规划(背包问题、最长公共子序列)、贪心算法(赫夫曼编码)、B树与B+树、广度优先搜索、深度优先搜索、最短路径算法、最小生成树算法。
  • 掌握技能:常用图算法实现代码,动态规划解决方案。

2. JAVA知识基础

2.1 JAVA基础

  • 推荐书籍:《深入理解JAVA程序员思想》。
  • 掌握技能:IO操作、多线程、反射、集合框架(如ArrayList、LinkedList、HashSet、TreeSet、HashMap、Hashtable、ConcurrentHashMap)、Iterator、Iterable、Comparable与Comparator、NIO、JMS、RPC。
  • 熟悉内容:线程安全、内存模型、内存管理、垃圾回收机制、内存泄漏与溢出(OOM、SOF)。

2.2 JAVA源码

  • 学习内容:HashMap、Hashtable、ConcurrentHashMap源码对比、LinkedHashMap、LinkedHashSet、Copy-On-Write机制、Lock机制、String类源码。
  • 掌握技能:源码分析与理解。

2.3 JAVA并发API

  • 推荐书籍:《JAVA多线程编程与核心技术》和《JAVA并发编程实战》。
  • 学习内容:synchronized与Lock的区别与使用场景、wait、await、notify、signal的区别与使用方法、yield、join、volitle、CAS、Java锁底层实现(自旋锁、阻塞锁、可重入锁、偏向锁)。
  • 掌握技能:并发编程中的线程安全问题解决方案。

2.4 理解JVM

  • 推荐书籍:《深入理解JAVA虚拟机》。
  • 学习内容:JVM内存模型、内存管理机制、垃圾回收算法、强、软、弱、虚引用、JVM性能优化、常见OOM与SOF问题、GC停顿机制、逃逸分析、堆外内存管理、G1、CMS垃圾回收器、性能监控工具(VisualVM、JConsole)。
  • 掌握技能:JVM性能调优与故障排查。

3. 常规储备知识

3.1 数据库

  • 推荐书籍:《SQL入门:Mysql必知必会》和《高性能Mysql》。
  • 学习内容:SQL基本语法、数据库设计、索引优化、JDBC编程、数据库调优技巧、InnoDB与MyISAM区别、数据库事务管理、常用数据库术语(主键、外键、索引、唯一索引、视图、触发器、存储过程、游标等)。
  • 掌握技能:数据库设计与优化、JDBC连接与操作。

3.2 设计模式

  • 推荐书籍:《设计模式之禅》。
  • 学习内容:单例模式实现方法、JDK中的装饰模式、策略模式、框架中的责任链模式、工厂模式、动态代理模式、六大设计原则。
  • 掌握技能:设计模式在实际项目中的应用。

3.3 HTTP协议

  • 推荐书籍:《HTTP权威指南》。
  • 学习内容:HTTP协议基本概念、版本、请求与响应格式、HTTP方法、HTTP头部与体部、REST风格。
  • 掌握技能:HTTP协议的实际应用与调试。

3.4 Spring

  • 推荐书籍:《Spring实战》和《Spring技术内幕》。
  • 学习内容:IOC容器原理、AOP切面编程、XML配置文件、Spring事务管理、Spring MVC框架、Spring Boot与Cloud功能。
  • 掌握技能:Spring框架的核心配置与使用场景。

4. 后端学习之路

4.1 WEB后端开发

  • 学习内容:JSP与Servlet开发、XML与JSON解析、HTML、CSS、JavaScript、JDBC操作、文件上传/下载、JavaMail、项目开发、Struts2、Hibernate、Spring整合开发、Spring MVC、MyBatis、Lucene、Shiro框架、CMS系统开发。

4.2 服务架构与微服务

  • 推荐书籍:《分布式服务框架原理与实践》和《微服务设计》。
  • 学习内容:SOA与微服务、负载均衡技术(LVS、Nginx)、RPC框架(RMI、Thrift)、消息框架(ActiveMQ)、Netty通信框架、Dubbo服务框架。

4.3 Hadoop学习

  • 推荐书籍:《Hadoop权威指南》。
  • 学习内容:MapReduce与HadoopFS、Hadoop集群搭建、Hadoop生态系统(ZooKeeper、Hive、HBase、 Pig、 Mahout)。

5. 常见技术实战

  • 项目开发:开发一个简易CMS系统,结合JSP/Servlet、Spring、MyBatis、Thymeleaf、Bootstrap等技术实现后台管理功能。
  • 算法实战:实现KMP字符串匹配算法、动态规划解决背包问题、贪心算法实现最小生成树。

通过系统学习和实践这些技术内容,可以逐步提升自己的技术能力,成为一名优秀的后端开发人员。

上一篇:HTTP请求的header头解析
下一篇:关于Java的10个误解

发表评论

最新留言

不错!
[***.144.177.141]2025年04月07日 03时02分25秒