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