如何看代码
刚到一个新的地方,必然会要看以前别人写的代码,只有你看懂了别人写的代码,你才能去修改它们,否则在一知半解的情况下去修改代码,很可能因为理解问题而引入bug,对于线上服务,将带来不可估量的问题。一般你到一个新的地方,别人也一定会给你一段时间叫你去看代码,有的地方可能还会有对你对代码的理解的考核。
记得当前在径点(AvePoint)实习的时候,当时是C#代码,我在很短的时间里就把代码理清了,而且还发现了一个小bug,这得益于什么呢?后来想想是得益于Visual Studio的强大功能,我在边看代码的时候,边调试,在调试的过程中看代码,调了几遍之后就了解了代码的逻辑。
今年在百度实习的时候,做完新人题之后就是看代码,由于是linux下的代码,没有好的ide,看起代码来比较费劲,还不能调试,加上代码逻辑性不是很强,串讲了两次都没有通过。我开始急了,我想到的办法就是做笔记,看到哪里就用文字来描述代码的过程。如果不理解代码的逻辑,就无法用文字描述代码的逻辑思路。读完整个代码,写了30多页的文档,最后才真正将代码看懂。
那其实写这么长的文档是没有必要的,很浪费时间,我发现我很长的一段时间,都浪费在写文档的过程中。但是如果你不写文档的话,你看完了后面的代码,有可能你就忘了后边的代码。
有没有其他的办法呢?
来到腾讯后,有幸参加一个以前在雅虎工作的同事分享他看到的某块代码逻辑。他是按照他的笔记来讲的。我看到他的笔记是一个从一个节点发散出去的图,点击某个节点的时候可以展开。后来得知,他用的那个软件是freemind,是一个思维导图软件,类似的还有xmind。
百度百科对思维导图的定义是:思维导图是有效的思维模式,应用于记忆、学习、思考等的思维“地图”,利于人脑的扩散思维的展开。思维导图已经在全球范围得到广泛应用,包括大量的500强企业。思维导图的创始人是东尼·巴赞。中国应用思维导图大约有20多年时间。具体可以参看百度百科关于思维导图的介绍。
尤其是对于比较复杂的代码,如果不借助有效的工具的话,很难在短时间内搞明白。俗话说得好,工欲善其事,必先利其器。如果你在为看代码而烦恼的话,不妨试试freemind或xmind等思维导图软件。
本文基于署名 2.5 中国大陆许可协议发布,欢迎转载,演绎或用于商业目的,但是必须保留本文的署名小橋流水(包含链接)。如您有任何疑问或者授权方面的协商,请给我发邮件。