关于业务一直改导致的代码整洁度问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
hHarvey
V2EX    程序员

关于业务一直改导致的代码整洁度问题

  •  
  •   hHarvey 2019-09-26 14:58:33 +08:00 3752 次点击
    这是一个创建于 2210 天前的主题,其中的信息可能已经有所发展或是发生改变。

    业务需求老是改,导致代码越改越乱,甚至改一个大的版本有些实体类都用不到了,这个时候你们会去整理代码嘛 比如删掉没用的方法?删掉没用的类?

    27 条回复    2019-09-27 13:47:44 +08:00
    zjsxwc
        1
    zjsxwc  
       2019-09-26 15:10:30 +08:00
    删掉没用的呗。
    这个和产品经理有关,
    没有逻辑关联的为什么要在一起保留,
    就和楼下店铺一样,上上个月开服装店、上个月开火锅店、 这个月开理发店、下个月要开培训班一样
    cnoder
        2
    cnoder  
       2019-09-26 15:14:22 +08:00
    要是下个版本又要加回来。。。
    可以删,但没必要,一定没用的就删了呗
    Vegetable
        3
    Vegetable  
       2019-09-26 15:14:56 +08:00
    我一般很少删的,主要是删了也没什么意义,但是被添加的新功能搞的很难看的代码,可能会尝试重构一下.
    araraloren
        4
    araraloren  
       2019-09-26 15:15:22 +08:00
    所以 你们没有版本管理么。。。?
    taogen
        5
    taogen  
       2019-09-26 15:17:32 +08:00 via Android
    删。单独 commit 删除操作,便于以后查找。
    luckyrayyy
        6
    luckyrayyy  
       2019-09-26 15:18:24 +08:00
    会,相当程度的代码洁癖,甚至有点影响开发进度....
    jadec0der
        7
    jadec0der  
       2019-09-26 15:49:17 +08:00
    build 的时候集成一个静态检查工具,比如 find bug, 如果有没有用到的方法或者类就会 build 失败
    czzhengkw
        8
    czzhengkw  
       2019-09-26 15:50:25 +08:00
    单元测试,覆盖率检测,覆盖不到的代码可以考虑删
    ai277014717
        9
    ai277014717  
       2019-09-26 15:52:38 +08:00
    产品在试错,如果转化率降低还可能下个版本还会加回来。
    MrJeff
        10
    MrJeff  
       2019-09-26 15:53:32 +08:00
    遇见没用的代码 我是一定要删掉的 反正有 git 做版本记录 代码洁癖
    jaryur
        11
    jaryur  
       2019-09-26 15:55:17 +08:00
    两个字:重构
    soulzz
        12
    soulzz  
       2019-09-26 15:55:20 +08:00
    删掉 包括注灰的部分
    有 git 后不需要留着
    MuscleOf2016
        13
    MuscleOf2016  
       2019-09-26 15:55:28 +08:00   1
    不会写着写着对这种代码就没感情了,已经是个被别人玩烂的东西了,能跑就行。
    passerbytiny
        14
    passerbytiny  
       2019-09-26 15:59:16 +08:00
    如果你们有完成的评审或单元测试过程,那你们的 CI、CD、质量管理员会逼着你删掉过时代码。
    ETO
        15
    ETO  
       2019-09-26 16:32:48 +08:00
    会,自己写的代码没用的会删掉,精良精减。
    不过,同事的虽然看着很难受,还是不敢动。
    tinycold
        16
    tinycold  
       2019-09-26 16:43:04 +08:00 via Android
    shi 山怎么来的,现在大家都知道了
    l00t
        17
    l00t  
       2019-09-26 19:06:34 +08:00
    不会次次删,但是隔段时间会删一次。变动太频繁的时候今天删明天加,就算有版本控制也很烦;隔段时间删一删,保持代码基本可控就行了。
    maxxxxx
        18
    maxxxxx  
       2019-09-26 19:12:48 +08:00
    强业务代码乱就乱吧,无所谓。
    Takamine
        19
    Takamine  
       2019-09-26 20:30:39 +08:00 via Android
    开闭原则就是被这么蹂躏的。_(:з」∠)_
    loading
        20
    loading  
       2019-09-26 20:36:11 +08:00 via Android
    能跑就行,因为肯定会重构(个鬼)。
    gaobing
        21
    gaobing  
       2019-09-26 21:24:22 +08:00
    代码分级。核心的功能和公用的功能保持条理和干净。易变的代码能用就行。
    zhuzhibin
        22
    zhuzhibin  
       2019-09-26 22:24:20 +08:00
    哎 前段时间做了一次重构 现在项目里面的 model 有很多比较复杂的业务逻辑,也是历史原因,刚开始的时候,orm 一直爽,现在有点难受了,违背了开闭原则,现在逐步往 server 层秦迁移,重构是一个漫长的过程。。。
    weizhiyao008
        23
    weizhiyao008  
       2019-09-26 23:01:17 +08:00
    不会,不删没事,删了出了 bug,这口锅有点大
    Elethom
        24
    Elethom  
       2019-09-26 23:06:05 +08:00 via iPhone
    突然感觉我们团队好良心,三天上线一个功能完整的版本,然后用了两周重构优化补全测试,几十毫秒的 shortage 都专门发 issue。
    feiffy
        25
    feiffy  
       2019-09-27 08:28:22 +08:00 via Android
    这个时候可能就需要应用设计模式的一些原则封装变化,把改动范围缩到最小,这样以后删起来更方便一些
    davidyanxw
        26
    davidyanxw  
       2019-09-27 10:09:19 +08:00
    复用,抽出公用的逻辑、类库、工具库。
    GreyYang
        27
    GreyYang  
       2019-09-27 13:47:44 +08:00
    如果业务已经运行起来了, 重构还是要小心, 类似给正在飞行的飞机换点零件.
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5942 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 02:41 PVG 10:41 LAX 19:41 JFK 22:41
    Do have faith in what you're doing.
    ubao 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