作为一个新人,大家是如何快速学习掌握一个老项目的

238 天前
 bigxianyu

文档不全,代码看的懂,但是链路长,逻辑复杂,猜不出意图,这种大家有什么好的办法可以快速学习掌握吗

4193 次点击
所在节点    程序员
41 条回复
PingAn66
238 天前
不懂的多问问同事
bigxianyu
238 天前
@PingAn66 嗯,有时候也会问,但是也会感觉多问不太好
shortxxx
238 天前
从业务逻辑出发 找产品聊 功能逻辑看测试
linshuizhaoying
238 天前
思维导图+架构梳理
x86
238 天前
多问同事 & 配合 GPT 补充文档
或者
https://github.com/eosphoros-ai/DB-GPT
LowBi
238 天前
debug 或者问 gpt
zcf0508
238 天前
通读代码
darkengine
238 天前
1 ,先在本地跑起来
2 ,在本地跑起来的代码上加日志,打断点折腾

没有捷径
litchinn
238 天前
作为一个新人,想迅速上手一个大型的老项目,是需要点运气的
1. 有一个优秀的领导(组长)这种角色,给你分派任务时从一些工作量不高但是能切入核心的工作开始,慢慢慢慢一个模块一个模块开始认识整个系统
2. 认真对待每次需求评审会,此时大家也是新接触功能,如果你是新人那么在评审会上你应该有很多名词不懂,记下来会后问一问,基本能搞清楚流程了
3. 看代码这东西真的很看运气,因为有时候项目的代码真的是屎山,写的人再看都不一定知道咋回事了。
4. 多去测试环境(或者其他非生产环境)的应用上点一点,看一看各个功能的用途,并尝试从接口找到对应代码(非 web 项目同理)
polo3584
238 天前
先让自己本地跑起来,然后先摸清各个模块对应功能,具体到里面的细节得到改到对应的模块才会去细看。
babyoung
238 天前
应该是作为一个老人,如何快速上手新项目?
wqhui
238 天前
看函数名加注释能知道大概在做什么,具体细节等要改的时候再认真看吧,看了也记不住那么多,神仙命名无解
my101du
238 天前
本地 clone 一份,先跑起来。

然后添加一个 branch ,必要的地方加注释。

然后查看数据表的 Diagram

然后新建一个 markdown 文件和一个思维导图,分别记录重要的文件、代码和结构。
hankai17
238 天前
8L + 1
debug + 日志
aptx4689
238 天前
接新 feature 加功能
vsitebon
238 天前
你一个人接手的代码前提下:
1. 一般如果不是非常屎山的代码,看函数名能搞清楚这个函数是做什么的,最怕就是接手:gmCount() => 购买记录
2. 如果碰到上述的这种屎山代码,加断点然后看操作后会输入什么输出什么;
3. 如果加断点的时候碰到中间的数据出现,khdd 这种的话,估计你还得去看具体的值是什么,就怕出现一个莫名奇妙的 1 或者 ‘1’;
4. 如果以上的这些情况你都碰到了,那恭喜你,你将进入地狱级难度;接下来你如果没办法那么快实现功能,一定一定要提前跟经理说
xiyou007
238 天前
我一般是
1. 先了解项目背景 主要做什么用的
2. 主要功能操作步骤
3. 主要功能的接口,以及背后的数据表,表主要的字段 以及表关联关系,画图记笔记
4. 其他的话 就是接需求 边写边看 ;切记 接新的需求后 先出方案 跟老同志 请教一下; 写完 让老同志 review 一下代码
shunwei
238 天前
你做那一块, 就把这一块功能了解清楚, 慢慢的, 整个项目你就都清楚了
chitanda
238 天前
自己写个文本类的文档,看到哪写到哪,看一遍写一遍之后,丢给 ChatGPT 让它帮你画流程图
yufeng0681
238 天前
@xiyou007 思路清晰, 我补充一点,不要期望通过看代码了解项目,只有分派到你具体模块,具体 bug 修复,你才需要深入看某一部分的代码,最好还是 debug 跟踪调用的接口方式快速走读代码。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/973590

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX