大伙怎么维护代码流程之类的文档,讨论讨论 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
Chuckle
V2EX    程序员

大伙怎么维护代码流程之类的文档,讨论讨论

  •  
  •   Chuckle
    qxchuckle 13 小时 16 分钟前 352 次点击
    一个动作入口背后可能经过 n 个函数,分散在不同文件、不同包里,产生 n 个动作分支,经过多年迭代后这颗饱含业务与代码的逻辑树就很难看懂了。

    但在写代码外还要写 markdown 、画图,感觉是难以为继的事,需要每个维护者都遵守规则去写文档,这个脆弱的文档很可能在某次小功能迭代、人员变动后就对不上代码,从而无人问津了。越来越大的文档库,也难找到要看的地方。

    产品 prd 自然有维护一些业务流程,但和代码实现也是两码事,缺少含有业务语义的代码流程。

    还是说没必要维护,全靠脑子记,忘了就从触发入口开始一路再看一遍。

    代码当中通常会有起节点作用的重要模块或函数,它们通常是大业务动作下可分解出的小业务动作的入口,那通过注解或者魔法注释,自动标记这些代码位置,在写代码的时候顺手标记下,人为加上业务语义备注,最后自动生成一份流程图,可不可行,现在有没有类似的工具了。

    再编写个 vscode 插件,点击这些魔法注释,能够聚焦到流程图对应位置,反之也可以定位到代码位置。
    Chuckle
        1
    Chuckle  
    OP
       13 小时 11 分钟前
    让 ai 定期扫代码库,生成代码流程图的,代码各个大大小小的函数调用链路倒是清楚,但太细了,ai 自己加的业务理解和业务流程还是有较大偏差,更有些完全幻想出来的流程,毕竟是靠函数、变量名、乱七八糟的注释推理的,作为给人看的东西还是勉强了。
    Chuckle
        2
    Chuckle  
    OP
       13 小时 5 分钟前
    另外有没有好用的画图软件,目前用 Draw.io ,有 vsc 插件可以打开.dio 文件是方便,但 Draw.io 各个元素之间太独立了,画好后要在中间某一部分插一点东西,拖动调整起来麻烦。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2619 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 20ms UTC 01:07 PVG 09:07 LAX 17:07 JFK 20:07
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86