普通Java程序员要深究源码吗?

系统学Java底层源码,包括Spring等组件的源码,是大多数Java初学者都会缴的智商税。看似有效但实则无用,为什么这样说呢?

1 初级开发做的是增删改查,没必要了解底层,了解了对开发帮助也不大。

2 中级开发要求的是熟悉业务,能排查大多数问题,这时也无需系统学习底层技能。

3 架构师确实要熟悉各种分布式组件或Java组件的底层,但程序员先得升级到架构,才有必要去掌握底层技能。

4 底层源码技能唯一的用处是面试,java程序员可以通过准备和说明底层技能在面试中充分展示技能,但这无需系统学习,在面试前顶多用两三周时间死记硬背即可。

也就是说,深入研究源码应该是水到渠成,勉强不得。比如在你项目中,感觉有必要通过阅读源码区解决spring boot或并发或组件层面的问题时,这时深如源码是必要的,而且还需要通过debug的方式调试源码。

但如果平时只是做增删改查,或者涉及到的技术不深,这个时候去看源码,大概率是前看后往,而且是没有方向去看。但是,如果在面试中,能结合源码去说自己解决过的资深问题,这绝对是个加分项。比如能力一般的java程序员,真可以通过此类方法去挑战更高级别的职位。

先说下,什么是Java的底层?在写代码时总要通过import语句引入所用的包,底层就包含在这些引入的jar包里,从这些jar包里,能看到各种底层源码。

1 针对Java核心库,比如HashMap,ArrayList或ConcurrentHashMap,或者是多线程锁相关的,底层源码是包含在JDK1.11的库里,比如是上述类的实现细节代码。

2 针对Spring Boot或Spring MVC,比如日常说的,Bean加载生命周期,Spring boot启动或装载模式,能从底层么里看到。

3 针对分布式组件,比如dubbo或netty或Spring Cloud alibaba里的诸多组件,底层是指在对应jar包里的代码或配置等实现细节。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值