我在知识星球:学习小圈子,分享《EF源码解析》专栏,已经连续写了6篇文章,今天来跟大家分享下,阅读开源项目源码的心得与体会。
心态很重要
很多人最关心的是怎么阅读开源项目源码,很多粉丝朋友都感觉好难,看到代码就退缩,其实这个是很正常的,就想我这种老程序员也是一样,阅读源代码都会抓狂、浮躁,这都是正常人的反应,至少我是这样的。
所以阅读源代码心态很重要,特别是刚开始入手的时候,很多地方看不懂,这个时候就要告诉自己不能放弃,一点一点的啃,当你入门以后,阅读起来就慢慢顺手了,就不会再感觉抓狂、浮躁。
所以阅读源代码,耐心很重要,不能轻易放弃,可以多给自己一点时间,慢慢的阅读,等入手以后,就没事了。
基础知识很关键
阅读源代码,很多人看不懂,这个与本身的知识储备很有关系,比如EF里面有运用设计模式、事件委托、扩展、record等等,很多人没有这方面的知识,就会不明白。这个是非常正常的,我作为一名老程序员,同样也会碰到这样的问题,一些C#新特性、或者一些平常比较少使用的特性,我也会因为没学过、或者忘记,导致看不懂。
碰到这样的问题,也没太大的问题,只需要先学习了相应的知识点,然后学习完新知识点后,再继续阅读就行,这样还有一个好处就是补充自己的知识点,另外可以更加深刻的理解知识点的使用,以及为什么作者采用这样的设计。
先学习其他人的分享
在阅读开源项目之前,可以先了解下其背景、以及使用方法,还有可以先在网络上搜索其他人相关的分享。现在网络上学习资料是非常多的,热门的开源项目,基本上都有其他博主有分享,可以先阅读下他们的分享,然后再去阅读开源项目,这样就比较容易入手。
从单元测试入手
每一个成熟的开源项目,都有单元测试的,就像EF项目,每一个功能点都有编写相应的单元测试,我们可以从单元测试入手,了解每一个功能点,也能比较快的找到功能点对应的源码。
收获
优秀的开源项目,都是一群极其牛B的程序员编写的,另外开源项目都需要考虑到通用性,他们考虑点都是非常全面的,所以他们设计的代码,也都是比较优秀的代码,我们学习开源项目代码,就能收获他们的设计思想。
为了更容易理解他们的设计思想,大家可以先思考下他们需要解决的问题、面向的用户群体、以及相关背景,这样才能更加深刻与容易理解他们的设计思想。
另外开源项目,他们考虑点都是非常多且全面的,很多我们在实际项目开发中,是不会碰到的,所以阅读开源项目,相当于我们经历了一遍,对我们学习编程也是非常有帮助的,以后在项目开发中碰到类似的问题,就能马上运用起来。
最后
非常建议大家尝试阅读开源项目代码,毕竟都是一群老程序员、深思熟虑设计出来的代码,我们可以从中学习到很多知识,同样的也能培养我们学习的好习惯。
领取专属 10元无门槛券
私享最新 技术干货