工作5年的Java程序员,才学会阅读源码,可悲吗?

最近一位5年开发经验的群友与我聊天

他说:最近慢慢的尝试去看spring的源码,学习spring,以前都只是会用就行了,但是越是到后面,发现只懂怎么用还不够,在面试的时候经常被问到一些开源框架的源码问题,即使在网上各种百度,当时回答出来也会是很皮毛,不痛不痒的解答。

对于目前碰到的瓶颈,他不知道怎么办。

我相信,绝不仅仅只有他一个人遇到这样的瓶颈,中国上百万的Java程序员中,大部分Java程序员都卡在这个苦恼中,或者还有更多的程序员们不知道自己不知道,因为他们看不到冰山下是什么。

回到为什么工作五年才会看代码这个问题。当工作五六年,随着自身职称的提高,遇到的问题越来越难,面对企业的高并发,高可用这些问题,已经不能用CRUD 来解决了,这个时候底层知识才迎来了应用的机会。回想以前的职业生涯,总结经验,然后把底层知识捡起来,去解决 CRUD 解决不了的难题,才懂得了代码的深层意义。

最后说一下我是如何帮他避免工作很久之后才发现底层知识的缺失吧,不废话,直接给出如下:

1. 未雨绸缪,不要太功利主义,不要觉得之后能赚钱的知识才是要学的知识,平时多看些编译原理,数学方面的知识,不是计算机专业的同学可以去搜一下国内外计算机专业名校的课程安排,然后去慢慢学习;

2.多写代码,没有时间看底层,就反向去学底层,以代码为手段,遇到问题就深挖原理,在编程中深入底层,熟悉原理;

3.培养全栈思维,全栈不是一个岗位,而是一种思维,可以用一种系统的观点让你重新认识自己目前的工作与岗位,获得全栈的简单方式就是多用新技术,然后横向对比,最终回到自己目前所用的语言,也就是跳出语言学语言;

4.寻求大神帮助,大神的经历与能力都是经过实践验证的,大神的能力提升方法也一定是高效率的,通过大神的提点,能够避免许多走弯路的情况。推荐一下自己的Java架构大牛群:669275137。我会定期上传阿里技术大牛讲解的互联网架构技术视频分享在群内。

5.对于以后想要成为大神的同学也是最重要的一点:警惕碎片化方式。不管是生活还是工作,大众的生活习惯已经趋向于碎片化,这是社会高速发展的结果,而编程需要的核心能力却是与碎片化相对的深度思维方式,不要小看碎片化,长时间在这种方式下生活,会丧失大脑的深度思考能力。是不是看超过5分钟以上的长文会有头晕不适的情况,是不是短视频app看的停不下来,有多久没有读一本超过300页的长篇书籍了?适度的娱乐是没问题的,但长时间如此的生活方式,会使大脑处理信息的能力退化。

那么,究竟要学什么?

七大Java架构专题

你可以不学底层,你可以继续靠 CRUD 就能月入过万,但寒冬来临时,如果被裁了,那就不能怨社会了。如今都在谈论寒冬有多可怕,但只有系统化思维的人才能看到原因,也只有这样的人,将来的路才会越走越宽。寒冬不可怕,在寒冬里没有生存能力,才是最可怕的。以上技术知识点你想学吗?转发此文并加群669275137免费获取Java架构师思维导图,每晚还能免费听阿里技术大牛直播授课七大技术专题,并且获取往期录播!

原文地址:https://www.cnblogs.com/xueSpring/p/10380868.html

时间: 2024-12-29 06:52:57

工作5年的Java程序员,才学会阅读源码,可悲吗?的相关文章

一个程序员应该读哪些源码?

来自知乎-http://www.zhihu.com/question/19589485 一个程序员应该好好读过这样一些代码: 一个操作系统内核 一个编译器 一个解释器 一个数据库 一个 Web 服务器 一个 Web 浏览器 一个编辑器 比如:Redis.Lua .nginx.webkit.linux kernel.vim等等.

工作了3年的JAVA程序员应该具备什么技能?(zhuan)

http://www.500d.me/article/5441.html **************************************** 来源:五百丁 作者:LZ2016-03-18 因为和同事有约定再加上LZ自己也喜欢做完一件事之后进行总结,因此有了这篇文章.这篇文章大部分内容都是面向整个程序员群体的,当然因为LZ本身是做Java开发的,因此有一部分内容也是专门面向咱们Java程序员的. 简单先说一下,LZ坐标杭州,13届本科毕业,算上年前在阿里巴巴B2B事业部的面试,一共有

微信熟人牛牛程序安装微信熟人牛牛程序安装2017年 Java 程序员,风光背后的危机

不得不承认,经历过行业的飞速发展期微信熟人牛牛程序安装(h5.hxforum.com) 联系方式170618633533企鹅2952777280源码出售 房卡出售 后台出租有意者私聊扣扣,互联网的整体发展趋于平稳.为什么这么说?为什么要放在 Java 程序员的盘点下说?的确,对于进可攻前端,后可守后端大本营的 Java 程序员而言,虽然供应逐年上涨,但是市场似乎对他们依然青睐有加.这些承担着技术招聘市场中高供给高需求的 Java 程序员在 17 年的招聘市场上,真的还能如此风光吗?还是埋下了一些

有2-3年经验的java程序员需要掌握的东西有哪些?

前言 因为和同事有约定再加上LZ自己也喜欢做完一件事之后进行总结,因此有了这篇文章.这篇文章大部分内容都是面向整个程序员群体的,当然因为LZ本身是做Java开发的,因此有一部分内容也是专门面向咱们Java程序员的. 简单先说一下,LZ坐标杭州,13届本科毕业,算上年前在阿里巴巴B2B事业部的面试,一共有面试了有6家公司(因为LZ不想请假,因此只是每个晚上去其他公司面试,所以面试的公司比较少),其中成功的有4家,另外两家失败的原因在于: 1.阿里巴巴B2B事业部的面试,两轮技术面试都过了,最后一轮

9大行为导致Java程序员薪资过低, 你有几个?

Java程序员薪水有高有低,有的人一个月可能拿30K.50K,有的人可能只有2K.3K.同样有五年工作经验的Java程序员,可能一个人每月拿20K,一个拿5K.是什么因素导致了这种差异?本文整理导致Java程序员薪水低的9大行为,避开这些大坑,你就离高薪不远了. 1.习惯即刻回报 技术刚刚掌握,能一边百度一边干活了就觉得该拿到多少多少钱了.找工作先想着多少多少钱,入职了没干几个月就想着要加多少多少钱,干了没几个月,薪水要是没涨,就放弃了,准备通过跳槽加薪,不跳槽的话,往往也会因为没加薪而牢骚满腹

Java程序员如何从码农晋升为架构师,你跟架构师的差别在哪里?

一.如何定义架构师 Java架构师,首先要是一个Java程序员,熟练使用各种框架,并知道它们实现的原理.jvm虚拟机原理.调优,懂得jvm能让你写出性能更好的代码;池技术,什么对象池,怎么解决并发量.连接池,线程池. Java反射技术,写框架必备的技术,但是有严重的性能问题,替代方案Java字节码技术:nio,没什么好说的,值得注意的是"直接内存"的特点,使用场景;java多线程同步异步;java各种集合对象的实现原理,了解这些可以让你在解决问题时选择合适的数据结构,高效的解决问题,比

Java已五年1—二本物理到前端实习生到Java程序员「回忆贴」

关键词:郑州 二本 物理专业 先前端实习生 后Java程序员 更多文章收录在码云仓库:https://gitee.com/bingqilinpeishenme/Java-Tutorials 前言 没有正式复工,就一直在老家待着,已经很长时间没有在三月份时候待在老家了,好久好久,从08年去县城上高中开始,在外多,在家少,一直没有机会好好停下来看看家乡. 坐的时间越长,回忆越多,想的越多,就想要整理一下这些年的经历,尤其是从事Java至今,算是一种回忆,也算是一种复盘. 分享给朋友们一张杨花. 大学

优秀Java程序员必须了解的GC工作原理

一个优秀的Java程序员必须了解GC的工作原理.如何优化GC的性能.如何与GC进行有限的交互,因为有一些应用程序对性能要求较高,例如嵌入式系统.实时系统等,只有全面提升内存的管理效率 ,才能提高整个应用程序的性能. 一个优秀的Java程序员必须了解GC的工作原理.如何优化GC的性能.如何与GC进行有限的交互,因为有一些应用程序对性能要求较高,例如嵌入式系统.实时系统等,只有全面提升内存的管理效率 ,才能提高整个应用程序的性能.本篇文章首先简单介绍GC的工作原理之后,然后再对GC的几个关键问题进行

【转】优秀的Java程序员必须了解GC的工作原理

一个优秀的Java程序员必须了解GC的工作原理.如何优化GC的性能.如何与GC进行有限的交互,因为有一些应用程序对性能要求较高,例如嵌入式系统.实时系统等,只有全面提升内存的管理效率 ,才能提高整个应用程序的性能.一个优秀的Java程序员必须了解GC的工作原理.如何优化GC的性能.如何与GC进行有限的交互,因为有一些应用程序对性能要求较高,例如嵌入式系统.实时系统等,只有全面提升内存的管理效率 ,才能提高整个应用程序的性能.本篇文章首先简单介绍GC的工作原理之后,然后再对GC的几个关键问题进行深