Java后端的学习之路

1. 前言

互联网寒冬已至,但是大家对宇宙机的向往却丝毫没有减弱。最近有很多学弟学妹问我怎么转码,所以就想写一篇文章来聊聊这个问题!

我觉得在问这个问题之前,还是有必要问问自己喜不喜欢编程,如果你并不喜欢这个职业,那我觉得可能你也未必能坚持走下去!我相信很多人单纯就是为了money,当然我也不否认money的重要性,但是我还是觉得这种人生大选择还是有必要问问自己内心。内心足够坚定、对技术足够热爱、坚持终生学习才是一个转码人的正确姿态!

其实我实习过三个岗位:数据分析师、产品经理、Java开发,但是今天我想说的是Java开发。为什么选择Java开发?「因为这是目前需求最大的互联网岗位,这丝毫没有夸张,小到三线城市、大到北上广深都有旺盛的需求。而且这个岗位天花板很高,值得你倾注一生去学习!」如果真的想转码,我还是首推Java开发,产品经理和数据分析严格意义上并不算技术岗!


2. Java学习路线

其实第一步不是学Java,而是清晰自己要学哪些东西。没有明确的规划,一切都是白瞎!当然我们的目的是找到一份工作,对于校招生而言,最重要的无非就是你的学校、计算机基础、学习能力。

2.1 计算机基础知识

这部分其实在校生可以去选修一下计算机学院的课程,或者直接去慕课学习。具体的说就是四门课:「操作系统、计算机网络、数据结构、数据库理论」。这些也是面试的高频考点,尤其是计算机网络,我觉得频率非常的高!那么怎么学习嘞?

「注意:这些都是我个人觉得比较好的资源,并不代表你也能喜欢他们,如果觉得我的品味不行可以自行去网上找资源,适合自己的才是最好的!」

2.1.1 操作系统

你所写的代码基本上都由操作系统来运行,因此你应当了解其运作的原理。这门课当年我学的也一般,这里我推荐一本公认的好书:「《现代操作系统》。」这书绝对是经典之作,写的非常棒!
Java后端的学习之路
但是我相信不是所有非科班人士都能驾驭黑书的,如果你发现读不下去也没关系,推荐一个视频:「南大的《操作系统:设计与实现》」,我很喜欢这个老师上课的风格!它的视频地址:https://www.bilibili.com/video/BV1HN41197Ko/?spm_id_from=333.788.recommend_more_video.0

2.1.2 计算机网络

网络无处不在,前端后端测试都别想逃开它!计算机网络的书籍我读了很多,这里找几本我觉得比较好的。
《图解TCP/IP》 这本书我相信人人都能读懂,没啥阅读门槛
Java后端的学习之路
《图解HTTP》这本书和上面那本一样,也是通俗易懂,强烈推荐
Java后端的学习之路
当然你要挑战自己的话,强烈安利计算机网络的圣经:
《TCP/IP 详解 卷一:协议》,这个还是有难度的,黑皮书读起来字字珠玑,但是阅读门槛还是有的!

Java后端的学习之路
最后推荐一个视频吧,感觉视频还是当代大学生最爱的学习方式,这个我觉得比某些国家精品课好太多了!吹爆这门课和这个老师,它就是:《计算机网络微课堂》,点开链接就能看到了!
https://www.bilibili.com/video/BV1c4411d7jb?spm_id_from=333.337.search-card.all.click

2.1.3 数据结构

相信我,学好数据结构和算法,你的编码质量会大大提示。其实数据结构还是用C语言描述比较好,不过既然是转码那就Java描述吧,顺便提升Java水平。
我强推一本书:「《算法》,」虽然厚,但是绝对的通俗易懂,读起来很舒服。其实看完它就差不多了,数据结构需要的是训练!
Java后端的学习之路
视频的话我推荐韩顺平老师的《图解Java数据结构和算法》,这个视频很长,其实也没必要看完,前面那本书也够了!
https://www.bilibili.com/video/BV1B4411H76f?spm_id_from=333.337.search-card.all.click

2.1.4 数据库理论

其实我母校计算机学院教我数据库理论的老师(曾慧老师)很厉害,讲得真的是非常到位!这部分我没啥好课和好书推荐,其实这部分的知识都融入了MySQL了!不要急!

2.2 Java基础

其实计算机基础是底子,工作中倒不会直接用到,但是面试问的很多。这部分绝对是你工作中用的最多的。Java是一门生态很繁荣的语言,要学的东西太多了,所以打好基础就非常重要了!

初学Java其实看一本书加一个视频就行,最佳Java入门图书我想颁给《Java核心技术卷一》(颁奖词:通俗易懂、讲得详细全面),最佳Java入门视频我想颁给:韩顺平老师的《韩顺平讲Java》https://www.bilibili.com/video/BV1fh411y7R8?spm_id_from=333.999.0.0(颁奖词:细致体贴、谆谆教诲)。

当然你如果有精力的话可以看看Java圣经:《Java编程思想》,这书千万别一上来就读,还是有阅读门槛的。

2.2.1 Java虚拟机

这块其实也不用了解太多,一般程序员用不到,但是面试也开始问了,还是有必要了解了解的。书籍的话我相信绝大部分人都是看周志明老师的《深入了解Java虚拟机》。
Java后端的学习之路

2.2.2 Java并发编程

这块是高频考点,重要性不言而喻,我觉得是Java学习最难的一部分。这块的书籍很多,我比较推荐《java并发编程实战》。
Java后端的学习之路

2.3 数据库

数据库主要就两个,一个是MySQL、一个是Redis(Redis请看我的推文)。MySQL还是很复杂的,不要以为就是写写SQL那么简单。可以这么说MySQL是面试必问考点,有两本书是一定要好好读的:《高性能MySQL》和《MySQL技术内幕:InnoDB存储引擎》
Java后端的学习之路Java后端的学习之路

2.4 框架与中间件

框架

框架这块其实难度我觉得不太大,主要就是四个框架Spring、SpringMVC、Mybatis和SpringBoot,这些都是最基本的框架一定要会的。视频我还是推荐哔哩哔哩UP主:三更草堂的视频:https://space.bilibili.com/663528522?spm_id_from=333.337.0.0。
其实学会这四个框架你就能做项目了,可以写后端了!

中间件

中间件太多了,重点学习一下消息队列RocketMQ和RPC通信框架Dubbo。
中间件这块还是看官方文档比较好,感觉没啥好的教程。

3. Java面试

其实你学完这些东西不代表就能面试了,面试由三部分组成:基础知识考查、项目经历考查、算法题考查。

3.1 基础知识考查

说白了这部分就是背面经,其实你只要把我交代的书都看了,背面经是很容易的。多看看别人面试大厂问了啥问题,自己平时多总结一下面试题,其实问题就那么多,我们也不用太畏惧。即使面试的时候答不上来,大方地和面试官说说,我相信他也不会为难你。当然如果你一问三不知,那就需要反省反省自身了!

3.2 项目经历考查

这块关键是精而不是多,选一到两个好的项目写进简历就行。其实面试官想知道的是你怎么解决问题、你收获了啥。所以好的项目一定是来源于实际的,或者说你亲力亲为的。

那种跟着视频做的项目说真的已经烂大街了,我建议大家多参加参加创业项目或者提早去实习,这种落地项目还是比较亮眼的。

3.3 算法考查

这部分其实应该是最重要的了,如果算法题答不出来我觉得你的面试大概率凉凉了。这部分的秘诀就是刷leetcode题,大概刷两三百道中等和简单题就行。这块靠的是平时的积累与锻炼,短时间内是很难补齐的。

4. 结尾

希望所有读者都能不再迷茫,希望每一个同学都能有自己的人生方向。转码成功比例其实也不大,还是要自己好好权衡,一旦选择了就不要摇摆了!最后希望互联网寒冬早点过去,大家都能早点上岸!

原文始发于微信公众号(Java之禅):Java后端的学习之路

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/161341.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!