
从零讲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字符串匹配算法、动态规划解决背包问题、贪心算法实现最小生成树。
通过系统学习和实践这些技术内容,可以逐步提升自己的技术能力,成为一名优秀的后端开发人员。
发表评论
最新留言
不错!
[***.144.177.141]2025年04月07日 03时02分25秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
【单片机开发】基于stm32的掌上游戏机设计 (项目规划)
2019-03-05
C++&&STL
2019-03-05
子集(LeetCode 78)
2019-03-05
微信js-sdk使用简述(分享,扫码功能等)
2019-03-05
mxsrvs支持thinkphp3.2伪静态
2019-03-05
c++中ifstream及ofstream超详细说明
2019-03-05
vuex modules
2019-03-05
sleep、wait、yield、join——简介
2019-03-05
web项目配置
2019-03-05
基于单片机简易信号误差分析设计-全套资料
2019-03-05
基于单片机简易脉搏测量仪系统设计-毕设课设资料
2019-03-05
Javascript中String支持使用正则表达式的四种方法
2019-03-05
eclipse引用sun.misc开头的类
2019-03-05
Servlet2.5的增删改查功能分析与实现------删除功能(四)
2019-03-05
spring启动错误:Could not resolve placeholder
2019-03-05
invalid byte sequence for encoding
2019-03-05
redis向数组中添加值并查看数组长度
2019-03-05
技术美术面试问题整理
2019-03-05
C++学习记录 五、C++提高编程(2)
2019-03-05
ORB-SLAM2:LoopClosing线程学习随笔【李哈哈:看看总有收获篇】
2019-03-05