当我拿到一份代码要做二开,比如 php,由于代码比较多,怎样快速的分析主要执行过程。
当然 debug 或 XHProf 可以起到调试的作用,但是执行过程要么太琐碎,要么依赖执行环境。
有没有什么什么工具,可以直接导入一个 project,即可以基于代码生成一个像思维导图这样的架构出来?
谢谢你的智慧!
1
DamonLin 2020-05-23 10:07:57 +08:00
在本地执行,打断点。反正我刚入职是这样
|
2
chengxiao 2020-05-23 10:24:01 +08:00
看业务逻辑直接找路由啊,这个最直接 前后端通用
|
3
Mitt 2020-05-23 10:59:44 +08:00
可以借助性能探测工具 比如 xhgui,可以实现你想要的结果,查看它从 main 到结束的过程(和耗时)
|
4
Mitt 2020-05-23 11:01:42 +08:00
@Mitt #3 当然了 这个前提是只能查看一条路径,没办法像你说的一样去直接剖析所有结构,主要是由于入口的问题,PHP 大多都是动态的,没办法靠代码去猜你会执行什么,只能靠执行一遍来获取你执行过的路径
|
5
BigPig666 2020-05-23 11:41:38 +08:00
xdebug 把生命周期摸清楚就行了
|
6
CODEWEA 2020-05-23 15:11:22 +08:00 2
对业务建立初步认识:把自己当成用户,尽可能的去体验所有功能,将业务的运行逻辑在自己的脑海中建立大概的印象
对单个业务点精准剖析:从不同渠道,了解业务,以及业务所关联的其他业务 对业务的代码进行逐步调试:先了解框架的运行逻辑,以及代码的执行顺序;自上而下,从大到小去用调试代码的方式去了解业务。 |
7
yc8332 2020-05-23 15:34:14 +08:00
当然是看功能了。先看功能,然后了解项目的路由方式,找到控制器。然后你想干嘛就干嘛了。
|
8
shellic 2020-05-23 18:47:02 +08:00 via Android
我觉着 6 楼说的就不错
|
9
impig33 OP |
11
impig33 OP v2ex 的交流氛围比思否和知乎好的多,谢谢各位大神
|
12
impig33 OP 可以继续讨论吗
|