在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
大家知道为什么程序员要阅读源代码吗?一方面是由于在开发工作中,肯定会碰到接手别人项目的情况,不懂得阅读源码连工作都做不好;另一方面,阅读源代码是学习和提升技能的重要方法。既然阅读源代码如此重要,那么我们应该如何阅读源代码呢?今天跟大家聊聊阅读源码的四大指导原则。

指导原则一:跑不起来的不读
跑不起来的源码不要读,因为看也看不懂,或者是很难看懂,事倍功半,读起来还费劲。什么时候这个源码必须得跑起来,跑起来有什么好处就是,你可以用debug-条线跟进去。 举个例子,比如ReentrantLock的lock(方法,没有跑起来的时候,静态的来读源码你会怎么读?按ctr|鼠标单击lock(方法,进入这个方法,会看到这个方法调用了别的方法,你又会按ctrl鼠标单击进入它调用的这个方法,一层层往下,你会发现没法读了,所以如果这个东西能跑起来就不一样了,你会发现与之前鼠标单击跟进的结果不一样了,原因是因为多态的实现,如果一个方法有很多子类的实现,但是你不知道跟着这条线,它会去实现那个方法,所以你就得全部看一遍。
指导原则二:解决问题就好
在实际中解决问题就好,读源码一方面可以解决问题,另一方面可以应对面试。什么意思呢?如果你接手了一个别人改过6手的代码,现在你的老板说这个代码有些问题,你往里边加一些功能或者修改一些bug。你解决了问题就好,不需要从头到尾去读去改这个代码。因此,阅读源代码的一大指导原则就是目的性要强,解决问题就行了。
指导原则三:一条线索到底
读源码的时候要一条线索到底, 不要只读表面。我们知道一个程序跑起来以后,可能这个程序非常大,一个main方法有很多的put、get. size各种各样其他的方法。每一个方法你调进去,这个方法很有可能又去调别的方法。所以你不要每个方法先看遍表面,然后再去里边找。而是要一条线索到底,就读一个方法,由浅到深看一遍。就样子阅读源代码的效率会更高!
指导原则四:无关细节略过
阅读代码最忌讳的是,不抓结构抓细节,只见树木不见森林。正确的方式是先把整体脉络理清楚,然后按照模块去阅读代码,把类和类、函数和函数之间的调用关系记录下来。有那些边界性的东西,在你读第一边没必要的时候,你可以先把它略过。
总的来讲,阅读源代码确实不是一件简单的事,甚至还有点困难,需要我们全身心的投入。而大部分时候,许多人没办法投入去阅读源代码,不是不够努力,而是方法就完全错了。希望大家都可以按照以上的四大指导原则,尝试着去读一下代码,相信一定可以获益匪浅!
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
程序员必须学习的编程语言工具及库
程序员必须学习的编程语言工具及库,小编整理了程序员经常用到的工具有Git and Github、SQL、Python、Excel或任何电子表格、Word文档或相似应用、PowerPoint、文本编辑、Linux命令、SVN、Powershell或Cygwin。
5847
2020-03-05 17:03:05
C语言学习心得和经验分享
一直以来,C语言都是程序员的必修课。作为长期排在各大编程语言榜首的热门语言,C语言直到今天在编程界依然拥有很重要的地位。因此,如果是想开始自己的程序员生涯,绝大多数人都会从学习C语言开始。然而,对于缺乏一定编程基础的初学者来讲,学习C语言的过程并不轻松,因此我们必须掌握科学的学习方法,合理规划自己的学习进度。这里我将作为过来人,与大家分享一下C语言的学习心得和经验,希望对大家的入门有所帮助。
8026
2020-03-06 12:50:42
少儿编程有必要学吗?
随着社会的不断进步,人们的消费水平和生活水平都不断提高,越来越多的家长愿意花费更多的金钱和精力投入到对孩子的培养中。而在各种少儿培训中,除了舞蹈、美术、音乐等传统兴趣培训意之外,“少儿编程”也被人们更多关注。儿童编程在把计算机编程融合孩子兴趣的同时,加强孩子思维能力的锻炼,学习编程语言,可以锻炼孩子的逻辑思维
7519
2020-05-22 14:42:07
前端开发和后端开发学哪个好?
在如今这个前后端分离的时代,许多转行进入IT行业的学习者都会思考这样一个问题:前端开发和后端开发学哪个好?要搞清楚这个问题,我们需要分别从前端和后端的学习内容、发展空间、薪资水平等方面入手,最后再结合自己的兴趣和实际情况,选择适合自己的学习内容。
7372
2020-06-26 15:47:59
IT行业选哪个学科职业发展空间大?
360 行一定要选择一个对学历要求较为宽容,但前景光明的行业。学历是找工作的一道门槛,目前国内很多行业都会对学历有要求。但非常庆幸的是,在以高薪闻名的IT行业,学历的门槛相对其他行业来说反倒宽容一些。
4355
2021-06-10 10:49:27
