学习真的是一个循序渐进的进程,也是一件需要坚持的事情。关于这篇文章,不同阶段的人或许有不同的了解,所以我把我整理的比较全面的java学习道路分享给大家,以供参考。下面的这个学习道路首要针关于那些刚刚学习了java,但是还没有深化了解的同学。
我大概把学习流程分了三个阶段。
第一阶段:根底阶段
根底阶段我首要分为了四大块内容:
一、数据结构与算法
1、简单的数据结构
(1)根底概念(2)数组(3)链表、(4)行列(5)栈
2、树
(1)二叉树(2)平衡二叉树(3)最优二叉树(哈夫曼树)(4)红黑树(5)B、B+、B*树
(5)LSM树
3、图
(1)图的根底常识和两种遍历方法(2)最小生成树(Prim算法和Kruskal算法)
(3)最短路径算法(Dijkstra(迪杰斯特拉)算法和Floyd(弗洛伊德)算法)
(4)拓扑排序
4、排序算法(8种排序算法和时刻空间复杂度)
5、java中排序东西
(1)数组排序(2)集合东西类排序
6、常见算法
(1)字符串比较KMP算法(2)剪枝算法(3)布隆过滤器(4)回溯算法
二、java根底
1、java集合
(1)各个java集合类(2)运用场景以及性能剖析
2、常用类
(1)根底类型封装类(2)BeanUtil东西类(3)string系列类(4)java各种关键字(transient、final、static等等)(5)Math系列(6)system系列
3、javaIO
4、java泛型
5、多态以及实现原理(首要是内存上的结构)
6、java注解和反射
7、java中的语法糖
8、java8、9、10新特性(首要是8)
9、java反常
10、其他零碎常识点(比方创立目标的4种方法)
三、规划形式
1、创立型形式(5种)
2、结构性形式(7种)
3、行为性形式(11种)
四、JVM系列
1、jvm内存结构
2、类的加载机制
3、GC算法、剖析、优化、东西
以上这个阶段看完了基本上就能够进入下一阶段了。第一个阶段是最枯燥乏味的,当然再上一个阶段中假定你还学习了HTML、css、js、jsp+servlet+jdbc这些。假如没有你能够先把这些学习了进入下一个阶段。或许像jvm系列这些在后面学习也能够,不过我觉得一开始就先理解更好
第二阶段
一、SSM结构
(1)spring(先运用)(2)mybatis(3)springmvc(4)SSM整合(包含运用maven整合)
二、相关东西
(1)maven(2)git(3)IDEA(4)eclipse(5)日志结构(6)Jenkins
三、java并发编程(内容比较多)
四、java网络编程
(1)序列化(2)网络编程根底(首要看书、TCP/IP这些)(3)NIO(4)netty(5)远程调用(RMI、Thrift、gRPC)
五、数据库
1、Mysql、Oracle
2、nosql(redis、MongoDB)
第二阶段完毕之后,我觉得应该是分专题的,因为没有严格意义上的先后顺序了,基本上便是用到哪一块就学哪一块就好了。
第三阶段
一、应用服务器
1、Tomcat
2、Jboss
3、Jetty
4、Weblogic
二、linux(不需要完结整个运维师的常识、会运用和底层原理)
三、分布式系统(这里边内容许多、结构也许多)
(1)Dubbo(2)Zookeeper(3)三大音讯中间件(4)分布式缓存(5)springSession
(6)高并发分流ngix(7)文件系统fastDFS(8)数据扩容mycat(9)Docker等等
四、微服务架构
(1)springBoot(2)SpringCloud等等
五、安全
1、加密机制
2、shiro安全验证结构
3、其他安全常识
4、一致性算法
其他的还有大数据与云核算等等结构。喜爱的关注我
我会按照这个常识体系慢慢更新里边的文章
目录继续更新中。。。。
分析一波java学习路线
最新推荐文章于 2024-10-01 18:51:18 发布