不试试看怎么知道呢?无非就是多付出点努力,哪怕达不到预期收获,好歹也不会太差,不是吗?
我自己基本上是从大二寒假开始自学之路的,起初也不知道该学什么,于是就在寒假期间先把下学期课程内容 Java 跟着课本,提前学了一遍,因为赶上疫情,寒假结束后学校没有安排开学,于是就在 B 站寻找一些网课去继续往后学习,也是那段时间,自己头一次认识到哔哩哔哩大学的重要性!
疫情在家 8 个月,先后在 B 站学了 Java 相关课程,后端框架,微服务相关课程,跟着网课做了一些项目,在 Gitee/GitHub 参考一些开源项目自己去阅读源码。也是这段时间,自己接触到了一些非常不错的 Up 主,推荐马小婧,很多学习视频值得看看~
过度依赖视频教学模式是否有害?
当然是有的!前期在接触 Java 后端技术体系的时候,看视频确实可以帮助快速入门,上手撸代码,学习效率也很高,但是这势必会养成一个坏习惯,遇到陌生的技术栈/知识点,首先想的是找视频而不是自己琢磨,编程相关技术体系那么庞大,不是所有课程都能被收录到 B 站,以视频形式分享出来。
举个简单例子,看 JDK 源码,这时候就不要再一味的依赖网课去学习了,自己动手搭建源码阅读环境,搜一些博客资料,跟着一步一步 debug,这样学习效率会大于看源码教学课程(因人而异,只是我自己的观点)。
如果博客、学习视频都没有的情况下怎么办?
以 Java 方向为例,如果在继续深入学习的过程中,发下当下网课、博客文章已经找不到自己要学的内容了,或者视频和博客都只是片段知识,而不是一套完整体系时,回归书本的必要性就来了。
比如,自己可以试着去读一读 《深入理解 JVM 虚拟机》、《并发编程之美》、《Spring 源码深度解析》、《Java 编程思想》等 Java 领域的神书。点赞+关注我支持一手,直接添加小助理 , 可免费领取相关资料~
总结:
===
学习步骤:
-
结合课本和老师授课入门
-
看网课自学
-
阅读博客学习
-
回归书籍,进一步提升自己~
从事计算机/互联网行业,在校期间具体应该学哪些?
========================
1 计算机基础知识
这里所说的计算机基础知识包括(但不局限)以下几门课程:
-
计算机网络
-
操作系统
-
计算机组成原理
-
数据结构
-
…
不要觉得计算机基础学科在工作中用到的不多,就不作为重点,在面试环节这些都有可能被问到,尤其是大公司!
2 某一个方向深入学习
举 Java 后端方向为例:
-
Java 基础知识
-
Java 并发编程
-
MySQL 关系型数据库、Redis 非关系型数据库
-
Java 后端框架,eg:Spring 家族,Mybatis 等等
-
微服务,Spring Boot 、Spring Cloud、Dubbo 等等
-
消息中间、ES 、Nginx 等等
这些范围的课程在 B 站 和 CSDN 博客社区基本上都可以找到教程和博客学习,但是切记,不要一味的堆积技术栈的使用而快餐式学习。即,一味的学框架,却不重视基础,这样在校招面试环节非常被动,甚至是很大缺陷。
简历上技术栈写的很庞大,但是从基础开始问起,一问三不知,所有都停留在基本使用层面,是非常不可取的。
什么是快餐式堆积学习?
比如学了 RabbitMQ 消息中间件,然后就又去学 RocketMQ ,Kafka 等,只是在堆积技术栈宽度,却没有在某一个 MQ 上下足功夫去研究。
基础和技术栈宽度哪个重要?
大厂更重视基础,小公司更在意技术栈宽度,小孩才做选择,成年人我都要!
所说的重视基础,到底是那部分呢?
举个例子,你熟悉 Java 语言,那么你是否了解过 HashMap 的实现原理呢?(当然,这种被问烂的问题,很多小伙伴会觉得简单的一批)。
或者说,Java 锁大家都用过,那么 Java 锁锁住的是什么呢? JVM 虚拟机是怎样区分不同的持锁对象呢?Java 8 大基本类型的内存占用空间和取值范围了解过吗?(诸如此类,如果不相信面试会问的这么细节,可以去看看牛客网大厂面经,和我的面试题打卡系列文章)。
其实我觉得,基础知识学起来,甚至比技术栈扩展更难!
不要贪多嚼不烂:
我身边有些同学也好,网友也好,经常会出现这样的情况:
Java 就业范围广,我先学 Java。但是 Go 语言是未来,我也要学 Go,前端也很重要,我也要学前端,或者 大数据比 Java 后端名字听起来高大上,我学大数据。
术业有专攻,每个人的精力是有限的,不同语言,不同方向的知识体系是无限的,我们只能把有限的精力,优先投入到当前最应该学习的内容上,而不是所有方向雨露均沾,但是没有一个方向是自己拿得出手的!
3 算法
大厂面试算法一个槛,相信很多小伙伴和我一样,都怕笔试算法题,但是啊,算法这东西,多刷题就行,leetcode 或者 oj,100 道题不够就 200 道题,200 不够就 300,只要花时间肯定能克服!
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
![img](https://img-blog.csdnimg.cn/img_convert/2713eea25cd73234b90b947ff9350301.jpeg)
最后总结
ActiveMQ+Kafka+RabbitMQ学习笔记PDF
关于分布式,限流+缓存+缓存,这三大技术(包含:ZooKeeper+Nginx+MongoDB+memcached+Redis+ActiveMQ+Kafka+RabbitMQ)等等。这些相关的面试也好,还有手写以及学习的笔记PDF,都是啃透分布式技术必不可少的宝藏。以上的每一个专题每一个小分类都有相关的介绍,并且小编也已经将其整理成PDF啦
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
ongoDB+memcached+Redis+ActiveMQ+Kafka+RabbitMQ)等等。这些相关的面试也好,还有手写以及学习的笔记PDF,都是啃透分布式技术必不可少的宝藏。以上的每一个专题每一个小分类都有相关的介绍,并且小编也已经将其整理成PDF啦
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!