奉劝那些想学好编程的人!
作者:沉默王二
Java 程序员进阶之路:https://tobebetterjavaer.com
大家好,我是二哥呀。
新的一周,形势上有了很大的变化,所以大家应该重拾信心,把前面落下的学习给补上来。
那今天来给大家分享一个二哥编程星球里的主题:以我快 3 年的工作经验来看,很多原理性质的东西似乎没啥用,比如说 HashMap 的原理,这些原理性质的真的需要学习吗?
我相信,应该还有一些小伙伴会有类似的疑惑,那今天我们就来聊一聊,希望能给大家一些帮助和启发🤔
球友提问
以下👇🏻是球友的提问内容,先来看一下。
请教二哥,一直以来就有一个问题,现在的应届生面试问的那么宽,相对也比较深,但是这些知识真的在工作中会用到吗?
比方说必考内容HashMap和ConcurrentHashMap的原理,比如JVM各种知识。以我差不多快3年的工作经验看来,基本上没有涉及到那么原理的东西,遇到不会的就网上查就行,基本上没有解决不了的问题。
多谢二哥。
二哥回复
工作拧螺丝,面试造火箭,就是当下最真实的写照了。
这是由多方面因素造成的。
第一,就是供需不平衡,冲着计算机高薪过来的人,太多了,放在我上大学那会,计算机专业是学校的垃圾专业,现在已经是香饽饽,各大高校的第一热门专业,不管是什么学校,经常是一票难求。
每年涌进来的毕业生越来越多,所以招聘方在筛选人才的成本上逐年提高。
以前有些大厂是不限制学历的,比如说阿里,大专都可以去,现在已经不可能了。双非想要进大厂,基本上是需要考研缓冲的。
那怎么才能招到有把握的人才呢?
多问一些 JVM,多问一些并发编程,多问一些源码,多问一些原理,就是一种切实可行的办法,也只能这样,如果问一些简单的,大家都会,就没有筛选的效果了。
问难了,即便是应聘者答不出来,但只要回答的合情合理,有自己的想法,那也可以,反正我面试的时候就这样。
第二,学生阶段,没有实际的工作经验,即便是去实习,也很可能是打杂,那在项目经历上,问多了也问不出个所以然。
于是只能多问问那些“造火箭”的知识点了。
但话又说回来,造火箭的理论知识真的就没有用吗?这要看工作的内容和造火箭的理论知识,之间有什么样的关联性。
比如说我是一个程序员,我每天用冰箱,我不需要知道冰箱的制造原理,冷冻原理,怎么才能不结霜。
但如果是一个冰箱制造业的从业者,那肯定是有用的。
参加工作后,遇到的疑难杂症,只需要团队当中一两个精英去解决就行了,其他成员靠着搜索引擎就能解决问题。
反正我工作中遇到的大多数问题,和你一样,不是靠 Stack Overflow 解决,就是靠 GitHub issue 区解决。
凭借经验,几乎很快就能定位到问题,并且经过一些尝试和调试,还没有遇到解决不了的问题。
但是,我也在补这些造火箭的知识,除了那些真的理解不了的,记不住的,大部分对工作还是有帮助的,能帮我们快速把思路打通。
所以我这里要奉劝那些想学好编程的人。
每天把输出“hello world”的程序敲上一百遍,坚持一百天,这样学编程的话,效果可想而知,是学不好的。
真的想要在编程这条路上走得更远,需要花费足够多的时间,并且要不断的寻求突破。
就拿学习 Java 来说吧,一开始可能要先学习 C 语言,打下坚实的基础,如果没有学的话,直接开始学 Java 也行,但以后有时间的话,还是要补一补内存管理、垃圾回收、类加载机制的,好处很多。从 Java 基础知识,到面向对象编程,到网络编程,到多线程并发,到 Java 虚拟机,到性能优化,都要学扎实。
这一条线下来,还不够。还要熟练使用各种开发工具工具,比如说 IDE、Git、Maven、Docker、Jenkins、ApiPost 等等;还要学习框架,比如说 Spring、MyBatis、Spring Boot、Spring Cloud 等等;还要学习关系型数据库 MySQL,缓存中间件 Redis、消息队列 Kafka、RocketMQ 等等。
除此之外,数据结构与算法、设计模式、计算机网络、计算机组成原理、操作系统等等,这些也要学,也只有这样,不断地走出舒适区,不断地突破,不断地寻求边界,然后才能真正地把编程学好。
计算机这条路是无止境的,如果你觉得你遇到了瓶颈期,那么去尝试学习原理,这会有助于你自身的能力突破。
人就是这样,有自己学不会的,有自己能轻松学会的,还有那些需要经过努力才能学会的。
轻松不会带来成长的快乐,学不会的也不会带来成长的快乐,只有那些努力过,掌握了的能让我们成长,还能快乐。
所以知识就摆在那,如果你需要,就去学,如果你觉得够用了,那么没必要看别人在学,你也要学。
这就是我的一些片面的理解和认知吧。
ending
一个人可以走得很快,但一群人才能走得更远。二哥的编程星球已经有 1100 多名 球友加入了,如果你也需要一个良好的学习氛围,戳链接🔗加入我们吧。这是一个编程学习指南 + Java项目实战 + LeetCode 刷题的私密圈子,你可以阅读星球专栏、向二哥提问、帮你制定学习计划、和球友一起打卡成长。
星球的知识图谱里已经沉淀了非常多优质的内容,相信能帮助你走的更快、更稳、更远。
下面👇🏻是二哥近期分享的一些原创内容,有在校学生党的,也有在职工作党的,多看看这些掏心掏肺的经验心得,应该会对你以后的校招&求职或者工作学习有很大的帮助🤔。
✌️:美团发offer后我就想毁三方了 ✌️:说出来其实挺丢人的 ✌️:公司没涨薪,我该跑路吗? ✌️:目前这情况,,跳槽外企 ✌️:不等华子了,决定去荣耀! ✌️:工作四年,被动醒悟 ✌️:来网易四个月,真的不一样 ✌️:秋招 13 家 offer,手到擒来 ✌️:考研失败,真的不甘心 ✌️:想春招找个实习,我该如何准备? ✌️:逼签!冲字节还是苟同花顺? ✌️:简历上写了这俩项目,超级加分! ✌️:双非很菜,拿到这俩offer挺不容易 ✌️:今年嵌入式软件这块真挺香 ✌️:入职 15 天,就想跑路了?
最后,把二哥的座右铭送给大家:没有什么使我停留——除了目的,纵然岸旁有玫瑰、有绿荫、有宁静的港湾,我是不系之舟。共勉💪。
欢迎点击左下角阅读原文了解二哥的编程星球详情,这可能是你学习求职路上最有含金量的一次点击。