• 请不要在回答技术问题时复制粘贴 AI 生成的内容
darknoll
V2EX  ›  程序员

我发现公司里面最难的活并不是开发新产品新功能,而是在没有文档没有人会的老代码上增加功能

  •  
  •   darknoll · Jun 4, 2021 · 9189 views
    This topic created in 1983 days ago, the information mentioned may be changed or developed.

    简直是太难了 孤立无援,每天都是绝望的心情,战战兢兢,不知道什么时候能干完活,甚至都不知道能不能完成功能 有时候踩到一个坑要花一两天时间解决,这就是传说中的苦活脏活累活了吧

    60 replies  •  2021-06-08 14:54:36 +08:00
    wqgogogo
    wqgogogo
    Jun 4, 2021
    1
    看代码一天,写代码一小时
    darknoll
    darknoll
    OP
    Jun 4, 2021
    2
    @wqgogogo 写代码的时候全靠猜
    zjsxwc
    zjsxwc
    Jun 4, 2021
    3
    所以要有好的设计,
    NetBeans 这些开源项目的源码都很容易上手。
    bigdogbigpig
    bigdogbigpig
    Jun 4, 2021 via iPhone❤️4
    4
    还好啦,至少你还有代码。。。见过 20 年前没有代码的项目要改的吗
    Cbdy
    Cbdy
    Jun 4, 2021 via Android
    5
    不想改可以提桶跑路
    Hconk
    Hconk
    Jun 4, 2021 via iPhone
    6
    @mazyi 给二进制文件打 patch 吗,之前看过一篇文章就是直接改二进制文件修 bug 。
    taogen
    taogen
    Jun 4, 2021
    7
    我也经历过。无数人接手,无数个人的屎山,没有文档,只能硬啃代码,然后继续在屎山上堆代码。
    我的做法是部分重构,老的模块不管,新的模块不参考之前的代码而是自己重新搭建一套基础结构上写。
    bigdogbigpig
    bigdogbigpig
    Jun 4, 2021
    8
    @Hconk 是的,都不是正常的开发干的事情了,感觉自己是一个黑客 hhhhh
    AngryPanda
    AngryPanda
    Jun 4, 2021❤️1
    9
    增加功能不是最难的,而是要求你重构这些老代码。
    qjbcnrs
    qjbcnrs
    Jun 4, 2021❤️1
    10
    😷 我司乙方跑路,没给源码,只给了安装包,只能反编译出来继续改。变量名全是 i1,i2,i3 。老代码最起码看字段命名还能猜一猜
    leven87
    leven87
    Jun 4, 2021❤️1
    11
    这种代码怎么通过代码评审的,不规范的公司还是跑路吧,反正也学不到什么东西
    AngryPanda
    AngryPanda
    Jun 4, 2021
    12
    @leven87 如果钱还行呢,舍不得跑啊
    ningfan120
    ningfan120
    Jun 4, 2021
    13
    PS0977yM5aKe5Yqg5Yqf6IO95Lmf5aW96K+077yM5pyA5oCV5aKe5Yqg5Yqf6IO95L6d6LWW5LmL5YmN6ICB5Luj56CB55qE77yM55yL5LiA5aCG5bGx44CC44CC44CC44CC44CC44CC
    darknoll
    darknoll
    OP
    Jun 4, 2021
    14
    @zhongjun96 这活你接了?
    qjbcnrs
    qjbcnrs
    Jun 4, 2021
    15
    @darknoll #14 打工人,没得选择的权利
    darknoll
    darknoll
    OP
    Jun 4, 2021
    16
    @zhongjun96 如果是 C#那种还好一点,如果是 C/C++的话,感觉没法改啊
    sadfQED2
    sadfQED2
    Jun 4, 2021 via Android
    17
    @zhongjun96 大佬牛逼,收下我的膝盖
    Exin
    Exin
    Jun 4, 2021
    18
    俺也一样!成就感全无
    bagel
    bagel
    Jun 4, 2021
    19
    没有文档没啥影响,好的代码本身就是文档。怕的是代码本身质量不行。。
    pkoukk
    pkoukk
    Jun 4, 2021
    20
    老的可以维护,拒绝增加功能。
    增加功能一律新写
    GG668v26Fd55CP5W
    GG668v26Fd55CP5W
    Jun 4, 2021 via iPhone
    21
    无他,唯手熟尔
    TokyoNight
    TokyoNight
    Jun 4, 2021
    22
    而且这种改完还最容易出 bug
    fkdtz
    fkdtz
    Jun 4, 2021
    23
    在屎山上拉屎,之后交给下一个人
    justseemore
    justseemore
    Jun 4, 2021❤️2
    24
    😂 还有比这难的。。 除了线上。。线下代码根本跑不起来。。
    geekboy
    geekboy
    Jun 4, 2021 via Android
    25
    有同感
    fengjianxinghun
    fengjianxinghun
    Jun 4, 2021
    26
    @darknoll patch 汇编 注入,当然能,难是难点
    lifespy
    lifespy
    Jun 4, 2021
    27
    @zpfhbyx #24 哈哈,我之前遇到一个项目就是,只能文件替换的,java
    Kv_se7en
    Kv_se7en
    Jun 4, 2021
    28
    我这也遇到过,另一个项目组散了,我们接,然后项目代码不全,配置项不全,安装的有些 npm 组件是私有的,非常醉人。
    charlie21
    charlie21
    Jun 4, 2021
    29
    @pkoukk #20 敢问是写什么语言 用什么 SDK 的
    arbit
    arbit
    Jun 4, 2021
    30
    @taogen 额不参考之前的代码的话,等到你离职的时候,下个接手的人又是一堆更高的屎山
    Rocketer
    Rocketer
    Jun 4, 2021 via iPhone
    31
    我也搞过,而且我想写个独立插件插进去用还不允许,领导逼着我拉跟以前风格一样的屎
    yimity
    yimity
    Jun 4, 2021
    32
    我现在经常干的事就是在我们 12 年 extjs 4.1.2 的没有文档的系统中加功能,改代码。
    v2erxh
    v2erxh
    Jun 4, 2021
    33
    再加一条:测试环境没办法测
    Routeros
    Routeros
    Jun 4, 2021
    34
    本来就是啊
    xuanbg
    xuanbg
    Jun 4, 2021
    35
    盲生,你终于发现了华点!
    iovekkk
    iovekkk
    Jun 4, 2021
    36
    没有文档算什么
    我现在去紧急支援一个项目
    这个项目有六七百个 bug 要修复
    但是我没有测试车机去运行调试代码
    然后跟我说要我尽快熟悉,把修 bug 的速度提上去
    kamal
    kamal
    Jun 4, 2021
    37
    @iovekkk #36 在线调试,可刺激了
    yhyh
    yhyh
    Jun 4, 2021
    38
    这不就是我吗,淦。特么的 人都要抑郁了
    Peikon
    Peikon
    Jun 4, 2021
    39
    更难的是 对没有文档没有人会的老代码进行重构
    taowen
    taowen
    Jun 4, 2021
    40
    https://mp.weixin.qq.com/s/UtBkJYpQHIvRQ_AQnzxxMw 如何不 Review 每一行代码,同时保持代码不被写乱?
    JRay
    JRay
    Jun 4, 2021
    41
    曾经在几个公司这么干过
    baba233
    baba233
    Jun 4, 2021
    42
    @zhongjun96 能看懂也是个人才
    chaleaoch
    chaleaoch
    Jun 4, 2021
    43
    Java 牛逼的地方就在这里啊...
    如果是用 python 写的够你喝一壶的.
    hyqCrystal
    hyqCrystal
    Jun 4, 2021
    44
    没文档 没注释 4700 行的 service 代码 加新功能 重构
    noyidoit
    noyidoit
    Jun 4, 2021
    45
    最近就在做这种活。。。领导叫我边看代码边写文档
    learningman
    learningman
    Jun 5, 2021 via Android
    46
    不错了,至少你还能用 IDE 写
    碰到只能用 olleydbg 的才是疯
    sugar2101
    sugar2101
    Jun 5, 2021
    47
    某国政府项目,从 77 年开始堆积的屎山,文档是纸质的,轻轻一碰纸就要碎了的那种破旧手册,只能运行在 Solaris 系统上,需要升级添加新功能。做了一年感觉自己铲屎的能力得到了升华
    Addup
    Addup
    Jun 5, 2021
    48
    @hyqCrystal 准备接手一个没文档, 没注释, 一个文件上万行, 整个工程上百个文件的屎山
    xuanbg
    xuanbg
    Jun 5, 2021
    49
    @Addup 你这个充其量只能算是比较臭的大屎堆,还不够资格叫屎山。
    bclerdx
    bclerdx
    Jun 5, 2021 via Android
    50
    @Addup 所以,写任何技术文档资料、注释说明很重要,这样后人好乘凉,避免在某些地方踩坑、犯错及注意的事项。
    darknoll
    darknoll
    OP
    Jun 5, 2021
    51
    @bagel 如果代码写的好,我要啥文档?我都不会发这个帖子
    a719031256
    a719031256
    Jun 5, 2021
    52
    @zjsxwc 项目代码哪有那么多时间去排版代码,反正能跑就行,遇到有注释的代码还好,没注释没实体,入参出参全是 map 的更蛋痛
    hqweay
    hqweay
    Jun 5, 2021
    53
    文档注释很迷惑人啊。我这的文档注释基本没啥参考作用……读 Clean Code,里面说到注释比不上结构良好的代码,这时才体会到里面的意思。一段代码经过了无数人的手,注释没维护过……又或者代码连带注释是前人从别处 CV 过来的……文档同理。嗐。
    zm8m93Q1e5otOC69
    zm8m93Q1e5otOC69
    Jun 5, 2021
    54
    多写注释。。我习惯写注释,甚至用 link 之类的标明相关的类。。
    LiSrRbE2Mac
    LiSrRbE2Mac
    Jun 5, 2021 via Android
    55
    一份代码多经手几个人,只要有人偷懒,文档和注释就逐渐对不上了
    lululau
    lululau
    Jun 5, 2021 via iPhone
    56
    一般复杂程度的系统,业务代码只要有靠谱的产品需求文档就够了吧
    wobuhuicode
    wobuhuicode
    Jun 6, 2021 via iPhone
    57
    我一般把自己的新功能写到一个新方法里。在这里引入试试,那里引入试试。跑起来没事就行。
    efaun
    efaun
    Jun 6, 2021
    58
    直接进 debug 模式写代码
    taogen
    taogen
    Jun 7, 2021
    59
    @arbit #30
    这样做当然前提要对自己有信心,不然还是按照之前的写法写。比如,对算法,设计模式,代码整洁规范等有一定学习和理解。
    liuky
    liuky
    Jun 8, 2021
    60
    @hyqCrystal 2 万行的 service 都有, 4700 真不是事
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1493 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 181ms · UTC 14:49 · PVG 22:49 · LAX 06:49 · JFK 09:49
    ♥ Do have faith in what you're doing.