凌晨起来肝的一篇 Java 学习路线,保证学弟学妹们大三大四的时候顺利找到实习 Offer(1)

简介: 凌晨起来肝的一篇 Java 学习路线,保证学弟学妹们大三大四的时候顺利找到实习 Offer

大家好,我是二哥呀!


13 年 Java 编程经验的老油条了,拒绝过阿里,在日企搬砖过 5 年,Java 领域的优质创作者,说实话,如果是单纯奔着实习 Offer 去的话,还是不难的。


说句挺不好意思的话,上学和刚参加工作那会,我一直傻乎乎的认为,只要把 Java 吃透的话就可以了,直到近些年我才恍然大悟,我的认知是有缺陷的。想从事 Java 后端开发工作,需要从以下 5 个方面做起,找到实习 Offer 绝壁不是问题。


C 程序设计语言,为什么学 Java 要学 C 语言呢?这也是我最近才想明白的一个问题,因为 C语言是其他编程语言的母胎,包括 Java,不少同学感觉自己学 Java 很吃力,原因可能就在这,没有把根基打好。

数据结构与算法,清华大学的邓俊辉教授曾说过这样一句话,数据结构作为构建高效算法的必要基础,在计算机科学领域中,起到了技术体系基石的作用。而算法呢?又是面试的必考内容,在国外,甚至可以只刷算法题就能拿到大厂的 Offer,这里给大家推荐一份纯 Java 版的 LeetCode 刷题笔记,美团技术大佬写的,主力编程语言是 Java 的同学可以借鉴下,刷题的幸福指数会提高很多:刷完 300 道 LeetCode 题后,我膨胀到要飘起来了!纯正 Java 版

计算机组成原理,这方面知识比较扎实的话,学妹再找你装机修电脑的话,可以说轻松搞定。计算机是由 CPU、内存、显示器这些设备组成的硬件,但我们大学毕业后,往往从事的是软件方面的开发工作。那怎样才能在硬件和软件之间自由穿梭呢?答案就是学好计算机组成原理。弄明白了计算机的组成原理,也就对整个软件开发有了一个系统的认知,不论是计算机的硬件原理,还是软件架构,都能很好的驾驭,随之而来的,我们的职业发展机会也就更多了。

计算机操作系统,为什么要学习计算机操作系统?第一,面试要考,第二,无论学习哪门子编程语言,比如说 Java、C/C++,都需要和操作系统打交道,像 Java 中的多线程技术,其实是由操作系统来负责进程和线程管理的;第三,学习操作系统,还能学到内存分配方面的知识。

计算机网络,又是一块面试经常被问到的知识点,什么 TCP 为什么三次握手?四次挥手?TCP 为什么是可靠传输协议,而 UDP 不是?键入网址到网页显示,期间发生了什么?HTTPS 握手过程是怎样的?

Java 源码,我大学时期有一个很牛逼的同学,基本上我们遇到的问题在他那都能搞得定,我问他有什么秘诀吗?他的答案很简答,看 Java 源码啊!确实,面试的时候,像 HashMap 这种源码级别的知识点,基本上是必问项目。

我之前整理过一个 Java 工程师进阶之路的大纲思维导图,这里贴出来大家围观下(参考自 hollis 的成神之路)。


image.png


当然了,这只是 Java 后端体系的鸟瞰图,校招的时候,不会要求上面的这些知识点全部都得掌握,像设计模式这块,通常需要大量的实战经验才能运用得恰到好处,学生阶段,往往项目经验比较缺乏,所以这部分内容在大学的时候往往没办法施展拳脚。


我之前曾分享过这么一个观点,假如有那么残酷的一天,我不小心喝错了一瓶药,一下子抹掉了我这十多年的编程经验,把我变成了一只小白。我想自学 Java,并且想要找到一份工作,我预计需要 6 个月的时间,前提条件是每天都处于高效率的学习状态当中,并且每天的学习时间至少在 12 个小时以上。


现在回头再评估下,发现这个观点依然是成立的。


如果大学阶段,学校开设了数据结构与算法、计算机操作系统、计算机网络、C语言程序设计这些基础课程的话,其实学起来会更快一点。


对于那些转专业的同学来说,如果时间比较紧迫的话,可以直接上手 Java,等到拿到了实习 Offer 后再把这些基础补一补我认为也是可以的。但这种情况下,就必须在找工作前很刷面试题和算法题了,通过强化突击弥补自己在计算机基础知识方面的短板。


我认识这样一些同学,是真事,初中高中阶段就对编程很感兴趣,在兴趣的驱使下很早的就有了编程的基础。我之前就认识这么一位小妹妹,初中的时候学习成绩特别好,直接保送到北航的一所直属高中,不是搞卫星就是搞航天模型,立志以后做一名黑客。


image.png


对于这些未来潜在的技术大佬,她们学什么都会特别快,因为论语里不是有一句话嘛,“知之者不如好之者,好之者不如乐之者”!


相关文章
|
3月前
|
人工智能 Java 大数据
Java程序员真的还有未来吗?如何备战2024春招?并狂拿大厂offer?
Java程序员还有未来吗? 嘿,小伙伴们,你们有没有想过Java程序员还有没有未来? 哈哈,别担心,我这就来给你们答疑解惑! 首先,让我们来看看Java的发展历程。自从Java诞生以来,它就一直是编程界的一颗璀璨明星。从Web应用到企业级应用,再到移动应用,Java无处不在。那么,现在呢?现在,随着人工智能、大数据和云计算的兴起,Java依然发挥着重要的作用。这些领域都需要大量的Java程序员来支持它们的发展。 那么,有人会说:“哎呀,现在出现了那么多新的编程语言和框架,Java程序员会不会被淘汰啊?”哈哈,别担心,Java程序员们!这些新语言和框架的出现并不会让Java消失。相反,它们
81 0
|
3月前
|
NoSQL Dubbo Java
唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)
xxx,都是好牌子,天天有三折” 是的,我在这家洗脑广告词公司里工作了整整三年时间,虽然是大家耳熟能详的互联网电商公司,但它的发展同其他新起互联网公司来说局限了很多,同时也早早遇到了瓶颈。好在三年前,我就开始规划了我自己的人生,所以在唯品会的三年时间里,我并未懈怠。
|
3月前
|
Java 开发者
Java 学习路线 2024 最新版!
又对上次分享的 Java 学习路线进行了简单修改完善,并增加了免登录下载和黑夜模式,这里重发一下。 花了一个月零碎的时间,我根据当下 Java 后端求职和招聘的最新要求,对之前写的 Java 后端学习路线进行了全面的优化和改进。
|
23天前
|
JavaScript Java 关系型数据库
基于 java + Springboot + vue +mysql 大学生实习管理系统(含源码)
本文档介绍了基于Springboot的实习管理系统的设计与实现。系统采用B/S架构,旨在解决实习管理中的人工管理问题,提高效率。系统特点包括对用户输入的验证和数据安全性保障。功能涵盖首页、个人中心、班级管理、学生管理、教师管理、实习单位管理、实习作业管理、教师评分管理、单位成绩管理和系统管理等。用户分为管理员、教师和学生,各自有不同的操作权限。
|
1月前
|
Java 数据库连接 API
Java 学习路线:基础知识、数据类型、条件语句、函数、循环、异常处理、数据结构、面向对象编程、包、文件和 API
Java 是一种广泛使用的、面向对象的编程语言,始于1995年,以其跨平台性、安全性和可靠性著称,应用于从移动设备到数据中心的各种场景。基础概念包括变量(如局部、实例和静态变量)、数据类型(原始和非原始)、条件语句(if、else、switch等)、函数、循环、异常处理、数据结构(如数组、链表)和面向对象编程(类、接口、继承等)。深入学习还包括包、内存管理、集合框架、序列化、网络套接字、泛型、流、JVM、垃圾回收和线程。构建工具如Gradle、Maven和Ant简化了开发流程,Web框架如Spring和Spring Boot支持Web应用开发。ORM工具如JPA、Hibernate处理对象与数
94 3
|
2月前
|
设计模式 Java 微服务
Java高薪学习路线:解锁Java开发的黄金钥匙
Java高薪学习路线:解锁Java开发的黄金钥匙
154 0
|
3月前
|
消息中间件 NoSQL Java
读完这些“Java技术栈”,拿下阿里Offer没问题
今天,要分享的这些是非常干货的面试知识,在疫情闭关期间,这些“Java技术栈”读完,斩获offer到手软。
|
3月前
|
JavaScript 小程序 Java
基于Java的高校实习管理系统设计与实现(亮点:实习记录、实习打分、实习作业,功能新颖、老师没见过、当场唬住!)
基于Java的高校实习管理系统设计与实现(亮点:实习记录、实习打分、实习作业,功能新颖、老师没见过、当场唬住!)
55 0
|
3月前
|
SQL Java 关系型数据库
疫情之后,幸获内推,4面京东拿下offer(Java后台研发岗)
在2019年时,就早早生了跳槽的念头,心想着拿完年终奖就要开始“跑路”,但万万没想到过完春节之后竟被疫情耽搁了这么久,导致很多互联网公司的招聘都往后一拖再拖。幸运的是,刚复工之后,就收到了朋友的消息,有京东内推的机会,问我要不要试一试,虽然说之前的目标是BAT,但根据自己目前情况来说,可能拿个京东也算是不错了,于是着手准备起来。
|
3月前
|
NoSQL 安全 Java
三面阿里被挂,竟获内推名额,历经5面拿下口碑offer(Java后台)
每一个互联网人心中都有一个大厂梦,百度、阿里巴巴、腾讯是很多互联网人梦寐以求的地方,而我也不例外。但是,BAT等一线互联网大厂并不是想进就能够进的,它对人才的技术能力和学历都是有一定要求的,所以除了学历以外,我们的技术和能力都要过硬才行。