想要阅读一些开源项目或框架的源代码,不知道从哪里入手?

有个朋友在知识星球上向我提问。




我的建议是从Spring的源代码入手。至少我自己也是这么做的,毕竟Spring里有大量的设计模式和OO编程的最佳实践。我之前在SAP使用SAP自己的开发语言ABAP进行日常工作,后来因为工作原因也需要用Java开发。虽然SAP之前大多数产品都是基于ABAP开发的,但是现在公司在向云转型,越来越多的云产品是基于Java Spring来开发了。我觉得Spring 5年之内都不会过时,值得程序员花力气去钻研。


请阅读知乎问题: 学习spring源码的意义是什么呢?


然后怎么去学Spring呢?如果一头扎进Spring的代码海洋,肯定就直接淹死了。


我的两个方法:


1. 边看书边看源代码。


我看的是这本书,边看书,边自己写读书笔记。




如果发现自己提笔却表达不清楚某个知识点,说明这个知识点自己其实还未真正理解,那么再回过头去看书。


下面是我写过的一些读书笔记:


Manage your test case with @SuiteClasses

How does @Autowired work in Spring framework

Run only given sets of your unit test via @Category

Use @Rule to define custom rules for your test method

How does annotation @Cacheable work

A simulation of Java Spring dependency injection annotation @Inject in ABAP

2. 边看源代码边自己写代码,调试代码


自己用Spring搭一个Hello World的应用,然后一点点往上添东西。可以参考我的这个Github Repository里的commit记录看我是如何添加新的功能的。




不断写代码,调试代码,把自己学到的新东西写出来。


为什么要写出来呢?


在我的微信公众号文章SAP成都研究院35岁以上的开发人员都去哪儿了?里提到,科学研究表明,在实战中学习,教别人,是最有效的学习方法。



上一篇:SAP Freestyle UI5 和 SAP Fiori Elements 应用的区别


下一篇:深入Atlas系列:综合示例(1) - 调用服务器端方法时直接获得客户端具体类型