1
dreambt 2012-09-18 00:07:25 +08:00
while(1){
if(非格式化) break; if(非OO) break; if(注释少得看不懂) break; readline(); } |
3
fire9 OP 我记得有一本《代码阅读方法与实践》英文名叫《Code Reading》,专门讲如何看代码的。
|
5
chairo 2012-09-18 08:51:54 +08:00
debug,一步一步跟进去,然后关键点做注释,代码跳转地方记录并做注释
|
6
cyberscorpio 2012-09-18 08:55:38 +08:00
一般不看,非看不可的时候,四个字:硬着头皮。
|
7
RobinFai 2012-09-18 09:07:24 +08:00
同楼上,非看不可时硬着头皮上。
|
8
hpyhacking 2012-09-18 10:21:53 +08:00
一般看代码我都会带着一些目的,譬如为什么会产生这个结果值,这东西为什么会有这个效果。
带着问题去看,去设断点往往会得到更好的效果。 |
9
sivacohan 2012-09-18 11:07:26 +08:00
分东西,非看不可同楼上。如果是开源项目,要么有文档,要么有rfc。
|
10
HappyDay 2012-09-18 11:42:47 +08:00
格式化先
|
11
zooandzoo 2012-09-18 11:57:49 +08:00
断点 DEBUG 最笨的方法,也是最有效的方法
|
12
sqbing 2012-09-18 12:03:15 +08:00
首先浏览一遍,注释少的猛加注释
代码逻辑比较隐晦的只能debug看了 |
13
primer 2012-09-18 13:07:26 +08:00
先看变量名,函数名,根据名字猜出大概功能,然后再细看代码。
|
14
guotie 2012-09-18 17:28:44 +08:00
gdb
|
15
yuest 2012-09-18 19:54:22 +08:00
从入口函数读起,比如 main 方法或假设一个请求过来开始触发的函数
读到不懂的函数就跳去读定义,系统函数或库不懂得就 google 当然只适合代码量比较小的东西 |
16
air00dd 2012-09-18 20:34:50 +08:00
有些软件可以把一些代码UML化,结构层次先大略了解下
|
17
pppcat 2012-09-18 21:35:41 +08:00 1
1 找项目的文档,如果找到了,先看文档
2 大概看一下源文件名字 可以猜出来很多东西 3 调试跟踪大体流程 4 找到你的关注点,详细看 |
18
batfree 2012-09-18 22:20:11 +08:00
opengrok,sourceinsight,grep,打开LOG,然后看执行过程,我就是这么看Android的源码的。
|