java 学习路线

java 基础

注:这里的 java 基础只是一些简单的语法和 Java 特性,对于线程这些高级的内容可以在写过一些项目后回头来巩固一下

首先去找一个 Java 的基础教程学一下,对于 java 基础你不要想着一开始就可以弄懂。第一次学习 java 基础你需要看着视频或者看书把代码敲出来看到效果就可以了,一定要敲代码,一定要敲代码,一定要敲代码!!!你只是看书或者看视频不去动手实操,那么你的学习效率其实是最低下的。别觉得自己看书或者看视频觉得懂了就可以偷懒,对于编程来说,你没有实战只想理论,那么我想当你真正自己想做一个小项目时就会束手无策。

java 基础视频,业界比较认可毕向东的视频。视频链接:https://pan.baidu.com/s/1bpD3P07#list/path=%2F

学习 Java 基础的时候,应该尽量多动手,很多时候,你想当然的事情,等你写出来运行一下,你就会发现不是这么回事儿,不信你就试试。

学完以上内容以后,你应该对 Java 有一个基本的了解了,现在你可以大展拳脚了。学习 java 基础可能会让你无聊,但是在你学完之后你就可以开发一些自己平时用的小工具了。比如 计算器、坦克大战、贪吃蛇、五子棋等,通过这些小项目你不仅可以培养出对编程的兴趣,同时也巩固了之前学的基础。

这个时候,不要急于进入下一部分,留下几天去好好总结你学的 java 基础和这个项目中遇到的问题,尽可能熟悉这些基础内容。

Web 开发

这些内容主要是 Web 开发相关的内容,包括 HTML/CSS/JS(前端页面)、Servlet/JSP(J2EE)以及 Mysql(数据库)相关的知识。

它们的学习顺序应该是从前到后,因此最先学习的应该是HTML/CSS/JS(前端页面),这部分内容可以直接在 w3school 上学习(熟悉一些标签,学一些布局方式)。你可以试着自己写一些页面,当然,你可以尽你最大的努力让它变得最漂亮。这部分内容对于后端 Java 来说,理论上不是特别重要,但至少要达到可以自己写出一些简单页面的水平。

接下来,你需要学习的是 Servlet/JSP(J2EE)部分,这部分是 Java 后端开发必须非常精通的部分,因此这部分是这三部分中最需要花精力的。不要想着上去就学ssm、ssh这些很流行的框架,其实这些框架也是由 servlet 进化而来的。如果你直接去学这些框架,我觉得你很大概率会被打回原型,而且自己的信心也会被打击。所以 servlet 是一定要去学的。

跟着视频中的教程一步一步去学习,一定要多动手。关于Servlet/Jsp部分视频的选择,业界比较认可马士兵的视频,因此推荐给大家。

最后一步,你需要学会使用数据库,mysql 是个不错的入门选择,而且 Java 领域里主流的关系型数据库就是 mysql。这部分一般在你学习 Servlet/Jsp 的时候,就会接触到的,其中的 JDBC 部分就是数据库相关的部分。你不仅要学会使用 JDBC 操作数据库,还要学会使用数据库客户端工具,比如 navicat,sqlyog,二选一即可。(关注本公众号回复 环境安装,即可获得这些安装包)

开发框架

这个时候你还不足以参加工作,你还需要继续深造。公司里为了提高开发的效率,会使用一些 Java Web 框架,因此你还需要学习一些开发框架。

目前比较主流的是SSM 框架,即 spring、springmvc、mybatis。对于 springboot 你不需要急着去学习,因为它其实就是对 SSM 一些配置封装起来了,所以当你把 SSM 熟悉了之后学习它就是 1、2 天的事。你需要学会这三个框架的搭建和一些简单的使用,并用它们做出一个简单的增删改查的Web项目。比如:xxx管理系统。你可以记录下你第一次搭建的过程,相信我,你一定会用到的。

你在搭建 SSM 的过程中,可能会经常接触到一个叫 maven 的工具。这个工具也是你以后工作当中几乎是必须要使用的工具,所以你在搭建 SSM 的过程中,也可以顺便了解一下 maven 的知识。在你目前这个阶段,你只需要在网络上了解一下maven 基本的使用方法即可(会使用 maven 导入 jar 包即可),一些高端的用法随着你工作经验的增加,会逐渐接触到的。

关于学习 SSM 框架的地址给大家推荐一个,这里面有视频,大家可以去观看。 (关注本公众号回复 javaWeb,即可获得视频链接)

注:学了很多框架以后发现,把基础巩固好是真的很重要。基础搞好了,框架是学几天就会。在此也提醒大家千万不要沉浸在CRDU中,这样只会阻止你成为一个优秀的程序猿的脚步。

java 进阶

  • Java 的数据结构相关的类实现原理,比如 LinkedList,ArrayList,HashMap,TreeMap 这一类的。
  • IO 包和 NIO 包中的内容。这部分里面 NIO 是重点
  • Java 并发包当中的类,它们都有哪些作用,以及它们的实现原理,这些类就是 java.concurrent 包下面的。
  • Java 的虚拟机的内容。这部分主要包括三部分,GC、类加载机制,以及内存。
  • 设计模式
  • spring 的源码
  • mysql 是怎么实现的?自己可不可以跟着相关的教程写一个,去了解数据库的运行机制。

这些内容都是提升你 java 编程功底的东西,当你把这些学习完以后,学习其他什么框架的就是触类旁通。深入研究底层绝对是面试时候的加项,对于实习生而言,你只需要把上面这几条的其中 1、2 个研究的有深度,这就已经超越了大部分人。

总结

  1. 培养兴趣
  2. 学习基础
  3. 学习框架
  4. 研究底层实现
  5. 在学习方法上一定要注重实战,并在学习一段时间后去总结学过的东西,可以写成笔记,也可以写成博客(写博客也是面试的加分项)。

本文分享自微信公众号 - Java知其所以然(gh_37a1335e2608)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-07-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券