一、简介
首先说下为啥要写这个文章,以及这篇文章能帮助我们什么。
1、为什么写这文章?
- 曾经的我对“源码”二字一头雾水,听见这两字都害怕,谁在我面前提源码,我就佩服的五体投地,果断认为他是大佬。
- 现在的我有了N个“狐朋狗友”,有见过面的,有没见过的,由于我喜欢再各大社区/Q群等社交平台装逼,所以很多人加我好友问我如下几个不带脑子的问题:
N连问:
1.大神,你xxx在哪看的,为啥我找不到?
2.大神,源码怎么看,我为啥看不懂?带带我
3.大神,你工作几年了,我感觉你比我厉害太多
4.大神,为什么我学完就忘了,你是怎么记住的
回答:没啥说的,这都是脑残问题,你垃圾都是因为你太懒,我举几个例子:
1.你认为你会了你就不敲了,那真的只是你认为,你写出来我看看?你的懒惰驱动你堕落。
2.在听别人吹牛逼的时候你发现参与不到其中,这时候的你在干嘛?发呆?看电视?看他们吹牛逼?你TM倒是自己Google了解一下啊,了解完去跟他们吹,吹到盲点继续Google。面向Google吹牛逼不香吗?
3.脑子里突然浮现了一个知识,结果你内心却告诉你,反正用不上,算了,不看了。
总结:
所以,别跟我说什么你看不懂源码,学完就忘什么的,你这么懒,想不劳而获?天才乔布斯都比你辛苦一百倍,劳模雷军也比你辛苦一百倍,比你牛逼的人都在努力,你还在这跟我BB说自己菜,你确实菜,菜的出奇。
2、这文章能帮助我们什么?
能够帮助你稳住心态,该如何学习新东西,该怎么学。
3、“源码”为什么加双引号?
因为此篇不只是针对源码,只能算源码倒霉,正好被我遇到。本篇适合学习所有东西,学习方法论。
二、为什么学习
我常跟P友们开玩笑说:努力不一定成功,但是不努力一定很轻松。 但这真的只是个玩笑。这么累学习为了什么?不谈什么宏图大志,只谈code层面
- 熟悉“源码”才能写出性能更优的代码、或者说写代码之前就会想到怎么才能写出最高效的代码,而不是一味的crud、cv大法!
- 很好的锻炼人的思维能力,多动脑才能更灵活!
- 面试或者和同行唠嗑的时候可以吹牛逼!(很主要)
三、方法论
个人对学习”源码“的一点建议:
- 不要只看我的或者其他人的文章,你要边看这些文章的时候边打开自己的开发工具,debug!debug!debug!
- 看永远不能会,可能你会说:我看多了也一样能会,抱歉,我只会说:你那是背下来了,并不是理解了。只有自己动手敲代码,debug源码才是真正的理解了
- 边学边练,每周花1-2小时集中复习下本周自己所学的内容,一定要动手实操,而不是反复看理论,你以为你会了就不敲了,那真的只是你以为!
- 多问自己为什么、多思考、多互动!可以再各大社区、qq/微信群里去提问、哪怕是去装逼也好!增加互动性!
- 学完每个知识点都用自己的语言总结出来,换句话说我写这篇文章也是自己动手能力强。你学完知识点自己做笔记,后期复习不香吗?别在懒了!
- 别一上来就搞什么高级的、全面的,你先把低级的、基础的玩明白好吗?
- 每个知识点都用Java(抱歉,我是Javaer)语言给他敲出来!比如mybatis源码学完了,你自己模拟他的思想造个轮子可以吗?别一个class走天下,多学他的思想和设计模式,学不懂照着抄好吗?
四、总结
别懒了,后浪!年纪轻轻的你们不去奋斗更待何时?我真羡慕你们的年纪还有大把青春去coding、去写bug、去通宵达旦!如果你真的热爱,那么当你老了,写不动了, 你才知道什么叫悔恨!
五、个人名言
- 比你牛逼的人都比你更加努力,你有什么资本继续浑浑噩噩?
- 想要不被人唾弃,那就得突破自己当前的瓶颈,要想突破自己的瓶颈,那就得放弃当前的舒适区。
- 什么都要会一点,这样装起逼来不会尴尬。
- 曾经的我唯唯诺诺,未来的我重磅出击。