致Java初学者

精心整理资料点击获取

前言

​ 能看到这篇文章的朋友,应该都或多或少的了解Java,也许你现在是个菜鸟还在成长的路上。再此期间你一定遇到了很多困惑疑虑,对未来的学习方向感到很迷惑。作为过来人我非常了解你们现在的处境。我是从2014开始接触Java这门编程语言的,从2017年从事Java相关开发工作,也是一个奋力奔跑的菜鸟,直到今天我还在不断的学习,提升自己的技能,学无止境,学习永远在路上。回顾自己的学习历程,也是充满了困难与挑战,也层迷茫与失落过,但最后都坚持过来了。今天特此写这篇文章,就是为了帮助曾经像我一样迷惑的Java初学者,可能这篇文章对你的提升不是很高,但是它能给你足够的勇气坚持下去,证明当初自己的选择是没错的。

​ 记得我当时学Java时,没人指点一切都能靠自己摸索。就和舍友共同出资在TB买了视频,然后就一抹黑的闷着头往下学,遇到问题只能百度。庆幸自己当初坚持了下来。

脚踏实地,明确学习目标

在现在这个社会,能够保持一颗学习的心,思考的心,我觉的是很难得的。我始终认为学习是一个循序渐进的过程。
从基础到难,从广度在到深度。不应该急功近利的着急上来就学习框架,基础都弄不明白,框架是很难应用起来的。

一个合格的Java程序员成长路线应该是这样的:

基础语法学习项目训练

框架学习

综合项目训练

初级程序员

中级程序员

高级程序员

资深架构师

脚踏实地,一步一个脚印,不要急于求成,做好每一步都将花费很多精力专研和学习,在这个过程中可能会遇到各种各样难解的问题,可能会打消学习的积极性,保持一个冷静的心,迎难而上。

指定良好的学习计划,按照计划实施学习。这样可以让你少出弯路,尽快成为一个合格的Java程序员。

在学习Java之前准备工作

在学习Java之前首先应该

第一:三问自己

一问:应该了解Java是什么?

二问:我为什么要学习Java?

三问:学完Java能干什么?

第二:安装环境

现在Java的发行版很多,对于初学者来说可能不知道下载那个版本的JDK,在这里我建议从JDK8学起,应该Java8提供了很多高级特性,对于以后的编程帮助非常大,而且现在很多开源的框架也是基于Java8开发的。

工利善其事,必先利其器

学好Java编程工具非常重要,可能对于初学者大多数接触最多的就是Eclipse或MyEclipse,之前我也用的是这。后来在同事熏陶下用了Idea,真的是太香了,非常值得推荐的开发工具,集成了很多优秀的插件,对你学习编程将起到事半功倍的效果。

严格遵守代码规范

才开始学习的时候,可能的想法就是,只要代码不报错,能运行跑起来就行了。代码规范就和我们的生活习惯一样,坏的陋习对我们的生活影响非常大。代码规范也是同理,所以就应该从开始就严格要就自己,遵守代码规范。

这里推荐《阿里Java开发手册》,Idea也集成了这个代码规范插件。

书籍推荐

作为过来人,走了很多冤枉路,踩了很多坑,但还是希望能够保持一个冷静,平常的心去学习。以下每个阶段推荐看的书籍,
如果你还迷茫,如果你还排序,那就拿出姿态行动吧

第一阶段推荐书籍

这个阶段主要是学习和了解Java基础

书名 推荐指数 备注
Java huashan-2019-06-20 5星 阿里Java开发手册信息版本
Java8实战 5星 从0了解Java8
疯狂JAVA讲义 4星 初学者入门书籍
Java核心技术 卷1 基础知识 原书第10版 5星 Java开发者必读书籍

这个阶段不推荐看《Java编程思想》因为你的功力还没到看的时候

第二阶段推荐书籍

这个阶段主要是学习和了解数据库相关数据

书名 推荐指数 备注
MySQL必知必会(文字版) 5星 从零开始学习Mysql
第三阶段推荐书籍

这个阶段你可能会接触一些前端的知识,包括Html,css,Javascript,jquery等

书名 推荐指数 备注
JavaScript高级程序设计(第3版)中文 高清 4星 内容全面
第四阶段推荐书籍

这个阶段你可能会接触Javaweb相关学习,了解servlet,学会写一些简单页面

第五阶段推荐书籍

这个阶段就需要学习一些框架像spring,mybatis等

书名 推荐指数 备注
Spring 3.x企业应用开发实战(高清版) 5星 内容全面,值得对看几遍
精通Spring4.x企业应用开发实战 5星 同一作者,框架版本不一样
Spring实战(第4版) 5星 内容全
Mybatis 4星 入门书籍
第六阶段推荐书籍

这个阶段可能就会学习一些高级部分如springboot,springcloud

书名 推荐指数 备注
JavaEE开发的颠覆者 Spring Boot实战 5星 springboot入门强烈推荐
Spring Boot+Vue全栈开发实战 4星 偏于实战
Spring Cloud微服务实战 5星 springcloud学习必看书籍
Spring Cloud与Docker微服务架构实战 5星 springcloud学习必看书籍
第七阶段推荐书籍

这个阶段可能就会学习一些高级中间件,如kafka,rabbitMQ,Docker

书名 推荐指数 备注
第一本DOCKER书 修订版 5星
Docker技术入门与实战第3版 4星
第八阶段推荐书籍

这个阶段可能就是了解一些架构方面的书籍
关注下面公众号,获取更多书籍和学习资料

鄙人学术短浅,也在学习中

学习指南

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

最后希望以上说描述的,能够帮助到你。

微信公众号


JAVA程序猿成长之路
分享资源,记录程序猿成长点滴。专注于Java,Spring,SpringBoot,SpringCloud,分布式,微服务。

致Java初学者的更多相关文章

  1. 一位资深程序员大牛给予Java初学者的学习路线建议

    java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈 ...

  2. 对Java初学者的忠告

    1) 适合自己的图书才是最好的,最好的书并不一定适合你,看自己的情况. 如果你是一个Java初学者一上手就捧一本Thinking in Java在手里,我想你的日子是不会好过的,那样的书给有一定基础的 ...

  3. Java初学者笔记

    Java初学者笔记 前提:认识汉字,认识英语单词,会用键盘打字 ------------------------------- 端口是什么: --------面向对象编程(OOP) 接口”(Inter ...

  4. 给JAVA初学者的50个忠告

    摘自: http://wenku.baidu.com/link?url=p5vDKt5bKzUXxG_hAsB9XopHJRROeovOGGh4jnXGZXiUedR-fNOLO7zb6ddENo5U ...

  5. java 初学者需注意问题

    1.Java为什么能跨平台运行? Java语言编写的程序既是编译型的,又是解释型的.程序代码经过编译之后转换为一种Java字节码的中间语言,Java虚拟机即JVM将对字节码进行解释和运行.编译只进行一 ...

  6. 一位资深程序员给予Java初学者的学习路线建议

    一位资深程序员给予Java初学者的学习路线建议 java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打算来点干 ...

  7. Java初学者:深度辨析"=="与equals的区别

    Java初学者:深度辨析"=="与equals()方法的区别 1.基本数据类型当中,"=="比较的是两个变量的值 int a=5; int b=4; 3 int ...

  8. Java初学者必知 关于Java字符串问题

    摘自 http://developer.51cto.com/art/201503/469443.htm 下面我为大家总结了10条Java开发者经常会提的关于Java字符串的问题,如果你也是Java初学 ...

  9. 转载:一位资深程序员大牛给予Java初学者的学习路线建议

    一位资深程序员大牛给予Java初学者的学习路线建议   java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打 ...

随机推荐

  1. 得到Access数据库中所有表名

    public static List<string> GetShemaTables(string db)        {                        string pa ...

  2. codeforces 1214

    D 比赛的时候居然看漏了条件... 若在(x, y)格子,那么只能移动到(x+1, y)或(x, y+1) 这样的话就好做了,直接dp,然后统计每一种路径长度经过的点数. #include<cs ...

  3. 深入理解 Embedding层的本质

    继上文https://blog.csdn.net/weixin_42078618/article/details/82999906探讨了embedding层的降维效果,时隔一个月,分享一下嵌入层在NP ...

  4. 关于后台动态模板添加内容的总结 Builder使用

    1.后台控制器中ArticleController中加载 formBuilder,listBuilder类: 2.实例化FormBuilder对象,调用类中的方法: 3.初始化时加载Builder/f ...

  5. python模块之序列化模块

    序列化 """ 序列--字符串 序列化--其他数据类型转化为字符串数据类型 反序列化--字符串转化为其他数据类型 """ json模块 &q ...

  6. 【js】Vue 2.5.1 源码学习 (八)响应式入口observe

    大体思路(七) 本节内容: deps 依赖收集的数组对象 => Dep 构造函数 /** ==> observe() * var ob * ==> if --isObject * = ...

  7. 为什么阿里代码规约要求避免使用 Apache BeanUtils 进行属性复制

    缘起 有一次开发过程中,刚好看到小伙伴在调用 set 方法,将数据库中查询出来的 Po 对象的属性拷贝到 Vo 对象中,类似这样: 可以看出,Po 和 Vo 两个类的字段绝大部分是一样的,我们一个个地 ...

  8. Node.js Windows Binary二进制文件安装

    1.下载文件 安装包的下载路径为:https://nodejs.org/en/download/ 选择你需要的版本,这里我选择了 Windows Binary 64-bit 版本. 2.配置npm安装 ...

  9. linux 短延时

    当一个设备驱动需要处理它的硬件的反应时间, 涉及到的延时常常是最多几个毫秒. 在这 个情况下, 依靠时钟嘀哒显然不对路. The kernel functions ndelay, udelay, an ...

  10. 2018.11.25 齐鲁工业大学ACM-ICPC迎新赛正式赛题解

    整理人:周翔 A 约数个数(难) 解法1:苗学林  解法2:刘少瑞   解法3:刘凯  解法4:董海峥 B Alice And Bob(易) 解法1:周翔  解法2:苗学林  解法3:刘少瑞 C 黑白 ...