阅读源码不得不知道的事

10 篇文章 0 订阅
6 篇文章 0 订阅

碎碎念

好哥哥们,整个 Redis 系列到这就算完结了。虽然没有到阅读源码那么深,但是很多知识点的原理基本上都是通过画图的方式讲清楚了(源码主要也看不懂啊,基本的一些语法都忘光了)。那接下来的话方向还是选择了Spring,只要这个框架真的是无处不在呀。另外的话,这个主题系列会涉及到源码相关的内容,建议好哥哥们自己弄一套环境然后边看文章边debug。这样对好哥哥们的帮助是最大,因为源码光看别人写的文章或者录得视频是真的没有用,因为我尝试过了。

我相信有好多好哥哥都或多或少的看过一些源码,然而我听到最多的是什么,看了没啥用啊,刚开始看了过几天就都忘记了。是的,这是一个过程,只要熬过这个阶段,那么接下来你的编码能力或者理解能力都能提升一个档次。当然,有好多好哥哥会说了,我没有阅读过源码,有没有什么方法能够高效的学习源码。答案是肯定的,有很多种方法能高效的阅读源码,但是很重要的一点就是不要为了读源码而去看源码,因为这样的方式是找不到动力的,会像一个无头苍蝇在源码里到处乱撞,根本无法理清楚。

另外,阅读源码需要的是坚持。不要碰到了一些难点或者看不懂的地方就放弃了。当然有很多好哥哥只是为了应付面试,觉得阅读源码没有什么必要。但是事实是这样吗,现在的面试都离不开原理,比如像HashMap的原理。这个你不看源码光看别人的写的博客是能应付一些面试问题,但是问的在深一点是不是就会被问住了,最后的结果就是像我一样等了快四年了还没给我通知(手动狗头)。

建议

这里的话不会展开细说,到时针对Spring一些功能点的时候在说一些具体的方式,只讲一下思路。

  1. 阅读源码前一定要知道这个框架是什么、能做什么、为什么要阅读源码。这个真的很重要,安酱一开始的时候很单纯的一个想法就是阅读一下Spring的源码,然后写在简历上(装逼)。最后没坚持几天看不下去了,然后面试的时候装了几波结果被按在地上摩擦。

  2. 阅读源码前一定要找到入口。这个同样非常重要,因为没有入口是真的不知道从哪里入手,最后像上面说的像无头苍蝇乱撞,最后头破血流,啥也不是。

  3. 一定要动手尝试,切记不要做键盘侠。这一点的话上面也说了,很多好哥哥意识冲动有了看源码的想法,但是这个过程实在是枯燥,你不动手只会被文章或者视频牵着走,你是无法发现自己的问题的。发现这些问题都是可以用来吹牛逼的,写代码不就是为了吹牛逼吗,面试不就是看谁能吹吗(哈哈哈哈哈)。

  4. 坚持、坚持、坚持。坚持就是胜利,同样有很多好哥哥们会有很多借口让自己放松下来,最后就放纵自己。一方面想要进步一方面有想要舒服,一碰到困难就算了。这样是不得行的,只要坚持度过这个阶段,后面阅读源码可能就会成为你的兴趣爱好。

  5. 选择合适的一个框架阅读源码。这个其实也挺重要的,安酱身边就有很多好哥哥一上来就阅读Srping的源码。这个真的太难了,几千个类呀,好哥哥们,不晕才怪。这里的话实际上好哥哥们一直会有一个误解,以为阅读源码一定要看这些知名的框架,其实不然。其实代码都是人写的、人写的、人写的。我想好哥哥们都看过同事的代码吧,找一个你认为是大佬的代码看看,这也是阅读源码。如果你认为团队中你就牛逼,那就看看像HashMap中的比如getset方法,其实代码量不多,但是会设计到一些算法,主要看什么呢,看实现思路,这个思路可以理解成我们平时的需求。

  6. 一定要记得写注释。这个同样也很重要,因为想Spring这种量级的不做是真的不行,来回绕几圈就会忘记这个是个啥。当然也可以用别人写好的,然后自己去看把自己的理解加上去。这样还有一个好处就是能记录自己的问题,比如可以在注释加一个TODO然后把问题记上。

  7. 合理使用第三方工具。这个的话到好哥哥们看源码的时候就会用到,比如我要看一个类的继承关系、类的主要方法等等呀。像IDEAEclipse也好都最这个有很好的支持。

总结

实际上上面都是一些安酱看源码的心得,我们都知道,讲道理谁都会讲,关键在于实践。我相信有很多好哥哥都跃跃欲试,或者以前也想过阅读源码,不如就趁现在冲冲冲(不知不觉就写了一篇毒鸡汤)。

微信搜 安安酱, 一个热衷于分享技术干货的公众号,来这里让你懂的更多

扫描二维码,关注安安酱,打开不一样的程序世界。安安酱,一个热衷于分享技术干货的公众号。
公众号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值