工作5年的Java程序员,才学会阅读源码,可悲吗?
最近一位5年开发经验的群友与我聊天
他说:最近慢慢的尝试去看spring的源码,学习spring,以前都只是会用就行了,但是越是到后面,发现只懂怎么用还不够,在面试的时候经常被问到一些开源框架的源码问题,即使在网上各种百度,当时回答出来也会是很皮毛,不痛不痒的解答。
对于目前碰到的瓶颈,他不知道怎么办。
我相信,绝不仅仅只有他一个人遇到这样的瓶颈,中国上百万的Java程序员中,大部分Java程序员都卡在这个苦恼中,或者还有更多的程序员们不知道自己不知道,因为他们看不到冰山下是什么。
回到为什么工作五年才会看代码这个问题。当工作五六年,随着自身职称的提高,遇到的问题越来越难,面对企业的高并发,高可用这些问题,已经不能用CRUD 来解决了,这个时候底层知识才迎来了应用的机会。回想以前的职业生涯,总结经验,然后把底层知识捡起来,去解决 CRUD 解决不了的难题,才懂得了代码的深层意义。
最后说一下我是如何帮他避免工作很久之后才发现底层知识的缺失吧,不废话,直接给出如下:
1. 未雨绸缪,不要太功利主义,不要觉得之后能赚钱的知识才是要学的知识,平时多看些编译原理,数学方面的知识,不是计算机专业的同学可以去搜一下国内外计算机专业名校的课程安排,然后去慢慢学习;
2.多写代码,没有时间看底层,就反向去学底层,以代码为手段,遇到问题就深挖原理,在编程中深入底层,熟悉原理;
3.培养全栈思维,全栈不是一个岗位,而是一种思维,可以用一种系统的观点让你重新认识自己目前的工作与岗位,获得全栈的简单方式就是多用新技术,然后横向对比,最终回到自己目前所用的语言,也就是跳出语言学语言;
4.寻求大神帮助,大神的经历与能力都是经过实践验证的,大神的能力提升方法也一定是高效率的,通过大神的提点,能够避免许多走弯路的情况。推荐一下自己的Java架构大牛群:669275137。我会定期上传阿里技术大牛讲解的互联网架构技术视频分享在群内。
5.对于以后想要成为大神的同学也是最重要的一点:警惕碎片化方式。不管是生活还是工作,大众的生活习惯已经趋向于碎片化,这是社会高速发展的结果,而编程需要的核心能力却是与碎片化相对的深度思维方式,不要小看碎片化,长时间在这种方式下生活,会丧失大脑的深度思考能力。是不是看超过5分钟以上的长文会有头晕不适的情况,是不是短视频app看的停不下来,有多久没有读一本超过300页的长篇书籍了?适度的娱乐是没问题的,但长时间如此的生活方式,会使大脑处理信息的能力退化。
那么,究竟要学什么?
七大Java架构专题
你可以不学底层,你可以继续靠 CRUD 就能月入过万,但寒冬来临时,如果被裁了,那就不能怨社会了。如今都在谈论寒冬有多可怕,但只有系统化思维的人才能看到原因,也只有这样的人,将来的路才会越走越宽。寒冬不可怕,在寒冬里没有生存能力,才是最可怕的。以上技术知识点你想学吗?转发此文并加群669275137免费获取Java架构师思维导图,每晚还能免费听阿里技术大牛直播授课七大技术专题,并且获取往期录播!
工作5年的Java程序员,才学会阅读源码,可悲吗?的更多相关文章
- 正式工作的前奏——一个Java程序员的实习总结(1)
不知不觉,到深圳实习已经三个礼拜了.跟在暑假的三个半月实习不一样,这次收获更多,感受更好,算是摆脱了那次实习给我带来的阴影(这个会放到以后才说). 在知乎上,有这么一个问题,你现在最想跟刚工作时的你说 ...
- 一个工作三年左右的Java程序员和大家谈谈从业心得
转发链接地址:https://mp.weixin.qq.com/s/SSh9HcA5PgMHv7xiolQkig 貌似这一点适应的行业最广,但是我可以很肯定的说:当你从事web开发一年后,重新找工作时 ...
- Java程序员的推荐阅读书籍
作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水 ...
- 工作3年的Java程序员,轻松拿到阿里P6Offer,只因为他搞明白了Redis这几个问题!!
Redis中的多路复用模型 Redis6用到了多线程?那多线程应用在哪些地方,引入多线程后,又改如何保证线程安全性呢? 同时,如何在性能和线程安全性方面做好平衡? 关于Redis的单线程模型 在Red ...
- 工作了3年的JAVA程序员应该具备什么技能?(zhuan)
http://www.500d.me/article/5441.html **************************************** 来源:五百丁 作者:LZ2016-03-18 ...
- 工作了3年的JAVA程序员应该具备什么技能?(转)
工作了3年的JAVA程序员应该具备什么技能? 因为和同事有约定再加上LZ自己也喜欢做完一件事之后进行总结,因此有了这篇文章.这篇文章大部分内容都是面向整个程序员群体的,当然因为LZ本身是做Java开发 ...
- 2017年 Java 程序员,风光背后的危机
不得不承认,经历过行业的飞速发展期,互联网的整体发展趋于平稳.为什么这么说?为什么要放在 Java 程序员的盘点下说? 的确,对于进可攻前端,后可守后端大本营的 Java 程序员而言,虽然供应逐年上涨 ...
- 9大行为导致Java程序员薪资过低, 你有几个?
Java程序员薪水有高有低,有的人一个月可能拿30K.50K,有的人可能只有2K.3K.同样有五年工作经验的Java程序员,可能一个人每月拿20K,一个拿5K.是什么因素导致了这种差异?本文整理导致J ...
- 五月的仓颉大神写的 三年java程序员面试感悟 值得分享给大家
感谢 五月的仓颉 的这篇文章 , 让我重新认识到自己身上的不足之处 . 原文地址http://www.cnblogs.com/xrq730/p/5260294.html,转载请注明出处,谢谢! 前 ...
随机推荐
- C++11 带来的新特性 (4)—— 匿名函数(Lambdas)
1 语法 Lambdas并不是新概念,在其它语言中已经烂大街了.直接进入主题,先看语法: [ captures ] ( params ) specifiers exception attr -> ...
- 想不想在mac上玩PSP?我教你呀
OpenEmu for mac是一款针对OS X系统的原生开源游戏模拟器.有了它可以在Mac OS X 系统上玩GB.GBA.NDS.psP.PlayStation.超级任天堂(SNES).红白机(N ...
- pycharm远程debug(内网环境,跳板机)
1.设置隧道 工具: secureCRT 1.新建跳板机连接session 2.选择刚建好的session --> Properties --> Port Forwarding --> ...
- Linux安装Tomcat-Nginx-FastDFS-Redis-Solr-集群——【第六集之补充:文本编辑器vi/vim】
一:vi/vim的基本使用流程,掌握这三个步骤就算是入门vi或者vim.接下来的学习都是对vim命令和使用技巧的掌握,这要求各位自己去记忆.因为很少使用到某些命令,自然我们经常忘记这些命令,所以一旦忘 ...
- 2018-2019-2 《网络对抗技术》Exp0 Kali安装 Week1 20165319
安装kali 我从网上找了相应教程一步一步跟着走,教程链接:(https://blog.csdn.net/qq_40950957/article/details/80468030) 安装成功: 配置共 ...
- Alpha冲刺(5/10)——2019.4.27
作业描述 课程 软件工程1916|W(福州大学) 团队名称 修!咻咻! 作业要求 项目Alpha冲刺(团队) 团队目标 切实可行的计算机协会维修预约平台 开发工具 Eclipse 团队信息 队员学号 ...
- 提高在word编辑公式的效率,及快捷键、对齐、编号问题
1. Word中编辑公式简介(重点看) https://jacobz.top/2017-08/WordMath/ 2. 快捷键 https://wenku.baidu.com/view ...
- 《团队作业》五小福团队作业--UNO-- LandingDay--降落
<团队作业>五小福团队作业--UNO-- LandingDay--降落 写在前面 几周的飞行之后,降落之日也如期而至了.在2018年12月19日我们顺利地完成了项目的总结汇报.但是,短暂的 ...
- MYSQL可调用执行自定义SQL的代码
DELIMITER $$ USE `mysql_wispeed01`$$ DROP PROCEDURE IF EXISTS `sp_execSQL`$$ CREATE DEFINER=`sa`@`%` ...
- Bphero-UWB 基站0 和 电脑串口数据格式定义
基站0 通过串口将系统中测得的距离信息发送到电脑,电脑定位软件通过三边定位算法计算出TAG的坐标,基站0 和 定位软件之间的数据格式定义如下(对官方数据结构进行了简化) 更多UWB定位信息请参阅论坛b ...