怎么快速熟悉一个迭代多年的项目?
抓两方面:
第一:产品的业务流程图或者用户用例图又或者视频文档等,了解产品怎么使用,它的业务是什么。
第二:数据库里面有几百个库,每个库里面几百张表,怎么弄个数据库的ER图,把表之间的关联关系理清楚。
假设你来到一个公司,这家公司什么文档都没有,代码迭代多年已经成为一坨屎,一个接口里面往下套七八层,领导又老是安排你改他们的老代码。
这时候你该怎么办?
这时候你要做几件事:
第一件事是先了解产品:
这里有二个步骤:
步骤1:找老同事拿一个高权限的账号去测试环境自己去体验。
步骤2:初步熟悉后,找人告诉你业务情况。
这里又分二种情况:
1.从产品经理这里得不到帮助:
换其他人去寻求帮助:
1.1.去找干的比较久的测试人员帮助:
这里又分二种情况:
1.1.1.能得到帮助:在他讲解的时候,录屏下来,避免遗忘,同时可以留存视频记录,作为后续新同事入职理解产品的一个方式。
1.1.2.不能得到帮助:在测试人员这里得不到帮助后:
1.2.去找干的比较久的后端人员帮助。
1.2.1.能得到帮助:后端大概率会跟你讲Java代码,如果单纯让他给你讲产品功能逻辑,可能也没那个耐心。所以当他讲代码时,按功能点给你讲解,避免陷入代码细节里面,从宏观角度去看代码逻辑,配合页面辅助里面。
1.2.2.不能得到帮助:通过ai辅助你看代码,提升效率。一点点慢慢看代码,慢慢熟悉产品业务。
2.能从产品经理这里得到帮助:
录个视频,让ai将视频解析成文档,自己上手实操一下,整理一下文档。
第二件事:生成数据库ER图:
步骤1:MySQL Workbench提供了生成ER图的功能。
自动生成的ER图可能非常庞大且难以阅读。你可以通过以下方式进行优化:
1.隐藏/显示表或列:只显示你关心的表或列。
2调整布局:大多数工具允许你手动调整表的位置和大小,连接线的样式。
3.分组:将相关的表放在同一个组内,更容易理解。
4.添加注释:为表或关系添加描述注释,帮助他人理解。
步骤2:利用trae插件安装到idea上,在代码中辅助分析数据库表字段关联关系。
这有会有几种情况:
1.每一个地方,甚至一个属性不同的值,都是一个业务的流程,ai生成的内容不能理解真实的业务逻辑,只能辅助一下。
2.代码嵌套太深了,ai无法识别一个接口的全部代码,拖拽进去一些代码内容提问,只能一块一块的问。
解决办法:
1.尝试从入口开始,包括接口,看看怎么串联的业务。
2.你需要把问题累积起来,要梳理,梳理完一起提问。
3.开始接一些简单需求,需求会评审,评审可以和老人提问。
4.主动的去挑新活干,会更好一点。