Java学习路线全过程(包含视频及图书资源)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/ZackSock/article/details/101278634

前段时间写了个关于学习路线的博客,但是有很多考虑欠缺的地方。今天重新做了一个思维导图,给大家整理了一下学习Java的整个路程。有什么问题大家可以友善发言。

我把Java学习路程分为四个阶段,这个只是个人观点。即自己按照当前对Java的认识,归纳出的四个阶段。有错误的地方也很正常,有不同看法、或者鄙人有出错的地方大家可以尽管指出。

四个阶段分别是“基础学习”、“深入学习”、“JavaWeb”和“升华”。听起来可能比较low,大家别介意。这四个阶段在时间上是先后的关系。

第一阶段:

我把JavaSE分为两个阶段,用意是更好的理解Java学习的层次感。首先是第一阶段,主要内容有一下几个

  • JavaSE基础内容
  • HTML+CSS
  • MySQL数据库(可以选择其它数据库,不过还是建议MySQL,毕竟是免费的)

而JavaSE基础内容,主要指面向对象、文本IO、异常和GUI等、、、其中,GUI可以选择性的学(建议是学一下比较好),用Java编写图像界面的情况比较少。而现在GUI也分了三个内容,AWT、Swing、JavaFx,当前主流的话还是Swing。在学习JavaFx后,感觉体验要比Swing好很多,界面也柔和很多。但是当前JavaFx方面的资料还是比较少的,所以需要大家自己做好选择。

HTML+CSS的学习需要记忆+理解,首先是记忆标签和属性。可能开始觉得html比较枯燥,但是学到div你就会发现一个不一样的世界。其实说起来也没多厉害,就是像一堆积木一样。

数据库的学习也是个全新的旅程,先是学习一些枯燥的文字知识。虽然很枯燥,但是还是必须要学,不过这段可以放在后面,与后面的内容同步学习。然后就是数据库安装,安装的时候可能会出错。然后重新安装的话,可以会因为端口被占用安装不了。这个的话,需要自己注意,要么把MySQL全部文件删除再重装,要么改端口。改端口的时候要死死的记住端口。后面学习数据库也像是一个句子的分析,理解句子的意思就知道sql语句是什么操作。

因为上面三个内容在此阶段没有任何联系,所以三个内容可以同步学习

第二阶段:

第二阶段还是以JavaSE为主体,主要内容如下:

扫描二维码关注公众号,回复: 7571772 查看本文章
  • JavaSE进阶内容
  • JavaScript+JQuery+AJax
  • 数据结构(如果学习过C语言可以选择C语言版本的数据结构)

JavaSE的进阶主要是多线程、集合、JDBC和网络。多线程是Java中比较复杂的一部分,虽然学习起来很容易理解。但是实际编程时,发现有很多需要考虑的问题,这部分需要花大量时间去理解。而集合主义是List、Set和Map,在当前的学习中,可以把他们当做数组的升级,但是结合第二阶段的数据结构,我们就可以深入的理解这些集合。而JDBC则是数据库操作的内容,在学习数据库后,可以在Java程序中,使用JDBC将数据存入数据库。网络部分则是一个全新的部分了。

JavaScript也是一门比较火爆的语言,虽然名字带Java,却和Java的关系不是那么密切,主要是结合HTML来使用。在学习Java的内容之后,学习JavaScript会比较容易。在JS中,事件驱动是非常重要的内容,如果学习了GUI也会接触到事件驱动。而JQuery可以理解为就是JS的简化+强化版本。AJax的作用就是网络请求,使用AJax技术可以实现请求数据然后局部刷新的功能。

数据结构的话就是一门全新的课程了,在学习数据结构之前,需要掌握一些基本的编程知识。学习数据结构的主要作用就是开发高效的程序,在开发过程中,会发现有很多实现方式。但是不同实现方式的效率是不一样的,这个时候就需要学习数据结构和算法。在学习数据结构之后,也能更好的理解Java中的集合。

第三阶段:

第三阶段主要围绕JavaWeb来学习:

  • JavaWeb
  • 软件工程
  • 其它知识

JavaWeb主要是Servlet、JSP、和一些框架的使用。在学习JavaWeb的过程中,还会接触到一些设计模式。之后是数据库更深层次的使用,数据库连接池。之后就是经典框架SSH、和最新框架的学习了。

软件工程大多为理论知识,还有一些图标的绘画及理解。

其它知识则是更进一步学习的内容,网页方面的框架Vue.js、Node.js,Linux的操作、Git操作、软件测试等、、、

第四阶段:

第四阶段属于额外部分了,一些更深层次的学习了。比如JVM底层的东西、网络协议的深入理解、设计模式的深入学习。以及一些硬件方面的知识,虽然程序员不是修电脑的,但是程序员应该要会修电脑。

这里推荐几本书:

  • 《深入理解Java虚拟机》周志明著
  • 《Java并发编程的艺术》方腾飞、魏鹏、程晓明著
  • 《黑客与画家》Paul Graham著
  • 《设计模式之禅》秦小波著
  • 《图解HTTP》上野宣著

图书的选择大家可以在网上多找找,我这方面看的书不是非常多,给不出非常全面的建议。

接下来给大家分享一下我的一些视频和图书资源:

第一阶段:

第二阶段:

第三阶段:

资源有限,大家也可以自己到黑马程序员、传智播客等地方找到学习资源。慕课、腾讯课堂和网易云课堂等,也有许多优质资源。

猜你喜欢

转载自blog.csdn.net/ZackSock/article/details/101278634