在开始源码阅读之前,一定要使用过这个产品,了解这个产品的功能、特点。
在开始源码阅读之前,需要先明白几个事
最好是带着问题去阅读源码,不纠结于小细节。 我一般读源码就是碰到问题后,带着问题去看,效果更好,不要想着假大空,把源码当小说一样看。 单个问题解决后,再向外延伸,就可以把一些点串起来。 最后,需要反复看一些重点部份,消失对源码的陌生感之后就会能看进去。 熟悉之后就会一种想要了解更多的感觉就会一直往下看,这个就是自动驱动的动力。
如果看不下去,不要责怪自己懒,人对看不见短期收益的事提不起兴趣这才是正常的一个人,趋利避害是正常的。 看不下去,该干嘛干,强迫自己看效果很差。不要骗自己,假装努力是在浪费时间,干IT的都很忙,看不去就看改改bug。
Spring 模块之么多、项目这么大,到哪里开始合适? 如果你是想解决问题,直接定位需要阅读的部份; 如果你是想深入了解,那有两种方式:
另外,看代码不是看小说,不是要一字一句的陷入到细节,切记。当然如果你就是喜欢这样。
这个是我比较荐的一个方法,看完一遍之后,通过测试用例可以跟着代码走一遍,调细节。
打开 Spring 项目,先来罗列一下整个项目。这个可太多了,分一下
spring-aop
spring-aspects
spring-beans
spring-context
spring-context-indexer
spring-context-support
spring-core
spring-expression
spring-instrument
spring-jcl
spring-jdbc
spring-jms
spring-messaging
spring-orm
spring-oxm
spring-r2dbc
spring-test
spring-tx
spring-web
spring-webflux
spring-webmvc
spring-websocket
spring-core spring-beans spring-context spring-context-support spring-expression
spring-aop spring-aspects
spring-instrument
spring-web spring-webflux spring-webmvc spring-websocket
从最基础的核心模块开始学习,了解最基本的原理,中间会遇到各种其它的基础知识和技术,就可以顺便拓展一下技能树。