如果你阅读别人的源代码,你是如何处理代码的?您在寻找什么模式(数据类型、循环、控制流的使用等)?你能读别人的代码多久而不感到无聊呢?到目前为止,你发现的最令人兴奋的模式是什么?
发布于 2008-11-20 13:12:56
除了显而易见的“自上而下”的一般方法之外,它还取决于我为什么要阅读它:代码审查,试图理解一些可用的代码以适应我自己的使用,试图学习一种新的技术,等等。
它也在很大程度上依赖于语言。如果它是一个OOPL,我可能会这样做:
<>G215>
发布于 2008-11-20 12:38:03
首先,我忽略了更改代码的冲动。这有时很难做到。但是,先理解,然后再改变,这会让你省去很多糟糕的“学习经历”。
接下来,如果格式不正确,请重新格式化。如果有代码格式化程序,请使用它。这是因为你倾向于看缩进,如果这不好,你对代码的理解也是有问题的。
然后,如果有复杂的数据结构,我喜欢画一个小图。这里的挑战是让它尽可能简单。墙上的大型图表很有趣,但大多数时候,它们看起来太繁琐了。所以这是浪费时间。
如果你最终理解了一段代码是做什么的,那就写一个注释。这是很重要的,否则你下一次来这里的时候就不会明白了。
下面的步骤是创建单元测试。现在,您不仅可以测试代码,还可以测试您对代码的理解。
最后,如果你完全理解它,并且你知道它可以(并且需要)变得更好,那么就改变它。但一定要运行测试。除非你是按每一个已解决的bug付费的。
发布于 2008-11-20 12:41:57
一个时髦的新术语是Code Spelunking。
https://stackoverflow.com/questions/305094
复制相似问题