手记

克服框架源码学习的心理恐惧,正确对待源码的学习

2020-02-18 18:44:387494浏览

翔仔

3实战 · 6手记 · 3推荐

有什么有效的手段能提升核心竞争力

经过翔仔这些日子的观察,发现大家对框架源码或者框架设计的学习存在敬畏之心,总觉得,现阶段的我并不适合学习框架源码,或者不适合开发自研框架,这些东西对于我来说太难了,还是等我学习完***再来学习吧。凡是出现等字,就跟程序里面的ToDo注释一样, 就很有可能永远都不去尝试了。
但是呢,你在等的时候,总会有别人去做尝试的,这样就拉开了大家的距离。随着互联网的红利逐渐耗尽,具有核心竞争力的人才才能在逆势中稳扎稳打。而核心竞争力如何培养,如何让你具备摆脱重复劳动的技能,学习框架源码和进行框架设计就是一个成本相对较低,并且能看得到进步和变化的途径。

学习源码和学习框架设计真的很难吗?

翔仔觉得未必,不要看见框架就害怕,看到源码就心烦,这毕竟是拉开差距、提高核心竞争力的一个有效途径。就跟外行看内行一样,总感觉啥都难,但是只要你迈开这一步,掌握了框架设计的方法,然后站在设计者的角度去思考框架的源码,这样就能抓住框架源码的脉络。抓住脉络之后,就能顺着它去摸通源码的全貌,之后再结合自己的需求深入某个细节里去研究,长此以往,多晕几次车,就能够把框架摸熟摸透,同时还提升了自己的框架设计能力。框架设计就是一个抽象通用能力的过程,一旦你掌握这项技能,那么干起来事半功倍。

什么样的框架比较适合学习?

身为Java码农,翔仔觉得Spring就是特别适合我们上手的框架,它经过了这么久的迭代,却能做到经久不衰,证明它里面的思想、理念是符合社会生产要求的,许多公司所谓的自研框架也都是参考了Spring,基于Spring去扩展的。所以研究一个热门框架,掌握里面亘古不变的思想,并且模拟它设计出一套简易的框架来,翔仔觉得这是一种行之有效的、提升自己核心竞争力的优势。框架也是人设计出来的,我们为什么不可以呢?所以不要过于恐惧,要努力尝试拥抱它,只要配合好合适的教程,入了门,就能在框架这个大草原上驰骋。

什么情况下我才能具备学习源码的能力?

其实回答很简单,会用就能学,所以你只要是会用Spring的,那么就能学习,我们要的是入门,入门后再顺着框架脉络去看去学,多于别人吐几次,就能强过很多人。

学习之后的具体好处是什么?

首先,前面说了,学习了之后,至少能提升个人的核心竞争力,以及对问题的理解和分析能力。
其次,说说明显的收益。其一就是面试。Spring相关的考点在面试中特别常见,比如说面试官问你Spring容器的依赖注入是如何实现的。针对此类问题,对于已经掌握脉络,看过源码的你,相信并非难事,从源码以及架构层面去分析,相信大概率会通过面试官的法眼。其二就是工作。工作上,刚入职往往就会去填别人的坑,填别人的坑就要阅读别人的代码,此时对于你来说也不是什么难事,毕竟你在学习Spring的时候阅读是很多开发者的心血和结晶,因此你甚至可以去改动别人的代码,突破别人的核心领域,让自己立于不可替代的位置,对你个人品牌的建设和收入的提升都会是一个有益无害的举措。
再者,你还可以去改进所学习的框架本身的不足,如果你作为框架的贡献者,名字出现在了开源社区,相信又会对上面的两个诉求有了更近一层的帮助。
##那么学习的过程中要注意什么?
主要有两点,第一点,不要一开始就陷入细节,我们要的只是脉络,脉络清楚了之后,再带着自己的诉求进入到细节去研究;第二点,一定要多阅读框架的api用法,熟悉了框架怎么用,你就能了解到源码为什么会这样写,这点会起到很大的帮助。

千万不要害怕,你不是一个人在战斗

总之,不要看到源码或者源码相关的课程就害怕,翔仔也会尽最大所能让大家理解起来不那么复杂,努力为大家撑开知识的大门。不要觉得现在学习的时机不合适,现在是学习的正当时,趁我们还年轻,多多提升自己的核心竞争力。

49人推荐
随时随地看视频
慕课网APP

热门评论

我现在学到了第五章第七节,发现到了第五章,需要理解拓展的地方变多了,但是仔细把视频多看两遍,然后自己总结步骤,也可以不看翔哥的源码自己写出IOC的实现。看到了这篇文章,我深有感动,因为今年刚刚毕业,一个非常普通的二本的毕业生,在学校仅仅学习了java的基础,简要的学习了Spring,写了几个简单的SpringBoot项目。但是对于很多的底层知识根本没有掌握,又急于求成,想写一些比较大的项目来提升自己的项目经验,从而找到工作;这样想,反而导致了自己在碰到问题时非常急躁,如果短时间内无法解决,就觉得沮丧,打击自己的自信心;这或许是许多二本院校学生的通病吧。

现在的我最最想知道的就是,在企业中日常的开发流程,还有就是希望自己有一个项目可以在面试的时候说的出口,翔哥能不能出一个比较优秀的项目,非常完善的项目,最好能讲一下项目上线后的一些事宜。

目前看到了第5章,翔仔逻辑很清晰,说的非常好

我现在学到了第五章第七节,发现到了第五章,需要理解拓展的地方变多了,但是仔细把视频多看两遍,然后自己总结步骤,也可以不看翔哥的源码自己写出IOC的实现。看到了这篇文章,我深有感动,因为今年刚刚毕业,一个非常普通的二本的毕业生,在学校仅仅学习了java的基础,简要的学习了Spring,写了几个简单的SpringBoot项目。但是对于很多的底层知识根本没有掌握,又急于求成,想写一些比较大的项目来提升自己的项目经验,从而找到工作;这样想,反而导致了自己在碰到问题时非常急躁,如果短时间内无法解决,就觉得沮丧,打击自己的自信心;这或许是许多二本院校学生的通病吧。

现在的我最最想知道的就是,在企业中日常的开发流程,还有就是希望自己有一个项目可以在面试的时候说的出口,翔哥能不能出一个比较优秀的项目,非常完善的项目,最好能讲一下项目上线后的一些事宜。

查看全部评论