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

正在全部重构自己几年前写的代码,用屎山来形容很贴切

  •  
  •   kisshere · Sep 5, 2019 via Android · 10380 views
    This topic created in 2618 days ago, the information mentioned may be changed or developed.

    真想给自己一耳光,几年前居然是这么烂的水平,目前修改得快要怀疑人生了,把一堆屎山不仅要啃完还要耐心品尝、细嚼慢咽的茫然感觉谁懂

    52 replies  •  2020-06-16 19:10:34 +08:00
    naihs
    naihs
    Sep 5, 2019❤️4
    1
    换个角度想想这说明自己这几年成长迅速。
    kisshere
    kisshere
    OP
    Sep 5, 2019 via Android❤️5
    2
    比看自己几年前扣扣空间发表的非主流文字还尴尬
    dadawenxi
    dadawenxi
    Sep 5, 2019
    3
    恭喜喜提屎山一座
    loryyang
    loryyang
    Sep 5, 2019❤️37
    4
    我告诉你一个很遗憾的真想,再过几年,你依然发现现在重构的代码是屎
    xiangyuecn
    xiangyuecn
    Sep 5, 2019
    5
    ``` do { 好不容易咽下去一点,...(过了一会)...,又要吐出来重新嚼一遍,然后再咽下去 } while loop ``` 这条回复有味道😂
    luzhh
    luzhh
    Sep 5, 2019
    6
    try{
    xxThread.do();
    } catch {
    e.print;
    }
    // 睡眠一秒,等线程差不多执行完后再获取数据
    sleep(1s);
    getInfo();

    这是我当年写过的代码,交接给你别人的时候,看到这里简直惊呆了。
    12tall
    12tall
    Sep 5, 2019
    7
    哈哈哈,前两天将入门时写的 1400 行 sql,减少到了 800 行,表示现在似乎才刚入门
    2255cn
    2255cn
    Sep 5, 2019
    8
    看去年写的业务已经理解不到当时的逻辑了。。每行注释也猜不透为什么当时如此处理。
    littlebaozi
    littlebaozi
    Sep 5, 2019
    9
    回想起自己小学时代码都不会写,岂不是要把自己气死,哈哈
    robinchina
    robinchina
    Sep 5, 2019
    10
    敢吃………………重构!给勇士敬一杯!
    d0m2o08
    d0m2o08
    Sep 5, 2019
    11
    我们这有个祖传项目,都是纯手撸的 jsp 页面,领导已经招了 3 批人修改了,每次都是干几天就跑了 2333
    adoal
    adoal
    Sep 5, 2019❤️2
    12
    以我的浅薄经验,几年前的代码只能算是一坨屎,要重构几次之后才能成为屎山
    turi
    turi
    Sep 5, 2019❤️1
    13
    @robinchina 一遍吃屎,一遍喝酒。这画面太美,不忍直视
    smallpython
    smallpython
    Sep 5, 2019
    14
    能举个具体的例子吗?
    到底怎样算不好的代码?
    你又是怎么改的?
    edwin2ex
    edwin2ex
    Sep 5, 2019
    15
    我也是,在吃屎中
    hantsy
    hantsy
    Sep 5, 2019
    16
    各种 KPI 压力下产生的代码基本上都是屎。。。
    utoyuri
    utoyuri
    Sep 5, 2019
    17
    那就屎上雕花
    patx
    patx
    Sep 5, 2019 via Android
    18
    能意识到以前代码有问题,说明进步了
    jzmws
    jzmws
    Sep 5, 2019
    19
    @d0m2o08 祖传代码再垃圾也不能动
    Resource
    Resource
    Sep 5, 2019
    20
    @luzhh 这个有点秀,哈哈
    Greendays
    Greendays
    Sep 5, 2019
    21
    为什么这么闲。。。我现在要改别人写的代码,那才叫。。。
    JohnLou
    JohnLou
    Sep 5, 2019 via Android
    22
    代码能运行不出错就是好的
    pcbl
    pcbl
    Sep 5, 2019 via Android
    23
    这 if else for while 多层嵌套竟然不出问题,卧槽,还是以前的我比较牛🐮
    limerence
    limerence
    Sep 5, 2019
    24
    @luzhh 所以说现在应该怎么写
    mamahaha
    mamahaha
    Sep 5, 2019
    25
    初始代码的时候想的是业务逻辑,代码重构的时候想的是结构和性能,两者不适合拿来对比。
    ShinichiYao
    ShinichiYao
    Sep 5, 2019
    26
    重构完发现原来运行的好好代码跑崩了
    24KPureFather
    24KPureFather
    Sep 5, 2019
    27
    @kisshere 你这回答真基霸刁钻
    24KPureFather
    24KPureFather
    Sep 5, 2019
    28
    @luzhh 我以前这是这样操作过,那是刚毕业的时候
    codz
    codz
    Sep 5, 2019
    29
    @luzhh 现在怎么写? 用 callback,去掉 sleep, 优化 try catch?
    JimmyTinsley
    JimmyTinsley
    Sep 5, 2019
    30
    最近想重构一下大学的毕设课题, 重构了 30%实在干不下去了...
    avenger
    avenger
    Sep 5, 2019 via iPhone
    31
    没有单元测试敢重构?
    lowman
    lowman
    Sep 5, 2019
    32
    吃屎不忘拉屎人
    NotNil1
    NotNil1
    Sep 5, 2019
    33
    让 重构的成本 > 重写的成本
    就不用面对这种问题了
    JerryCha
    JerryCha
    Sep 5, 2019
    34
    我做毕设的时候 OpenCV 处理的部分直接挂在 UI 主线程下执行,还好挺快的没卡死
    s1E4GnZ4A2qGRyva
    s1E4GnZ4A2qGRyva
    Sep 5, 2019
    35
    建议业务相关部分用中文命名标识符
    way2create
    way2create
    Sep 5, 2019
    36
    重构自己的代码没什么...重构别人的屎山才烦
    meeken
    meeken
    Sep 5, 2019
    37
    重构自己的起码知道什么是什么好吧...
    KunMinX
    KunMinX
    Sep 5, 2019
    38
    Android:你还在等那个,手把手带你重构的人出现吗?

    https://juejin.im/post/5bcd58b6e51d45404c71d23f
    WispWind
    WispWind
    Sep 5, 2019 via Android
    39
    我看自己上个月的代码都像一坨翔。。
    beastk
    beastk
    Sep 5, 2019 via iPhone
    40
    我们不生产屎,我们只是屎的搬运工。
    qile1
    qile1
    Sep 5, 2019 via Android
    41
    @luzhh 你这个代码提醒了我,最近写串口通信,发查询放到线程里面,几秒后无数据直接返回
    你是个方法不错
    iPhoneXI
    iPhoneXI
    Sep 5, 2019 via Android
    42
    巧了,最近重构项目我也这么认为的


    如果一段时间没看的老代码,再看时已经很难看懂了,那么是好事:说明以前你写的比较烂,进步的机会来了。详细来讲,这是一个可以通过重构旧代码、使其逻辑更加清晰,从而提升架构水平的机会。一定要抓住。https://twitter.com/tualatrix/status/1169483566754852865
    justfortest
    justfortest
    Sep 6, 2019
    43
    以前以为我 3 年前的代码是屎山,直到去了其它公司工作,我发现我以前的代码是一股清流,经历的两家互联网公司的代码都是一言难尽。
    xuanbg
    xuanbg
    Sep 6, 2019
    44
    重构代码才能进步,否则无论你写多少代码,都只是原地踏步。为完成任务而写代码的时候,你是不会想着怎么写更好的,做到正确实现功能,没有 bug 已经是竭尽全力了。
    wamson
    wamson
    Sep 6, 2019 via iPhone
    45
    最近重构了半年前写的代码,也是屎一样。
    me876
    me876
    Sep 6, 2019
    46
    看自己以前写代码都是这种感觉,你不要惊讶,这只能说明你现在进步了
    luzhh
    luzhh
    Sep 6, 2019
    47
    @limerence
    @codz
    线程用 callback 或者直接改成一个同步的方法等待操作完再查询数据。
    @24KPureFather
    @Resource
    毕业后的第一个项目,看到代码后直接头皮发麻,还有其他导致死循环的代码。。。
    root8080
    root8080
    Sep 6, 2019
    48
    重构自己的屎山是真没话说 重构别人的才叫真服气 根本不想碰啊啊啊啊 唉😔
    nyanyh
    nyanyh
    Sep 6, 2019
    49
    当初第一次写 Typescript 的时候是基于一个老项目改的,为了更快地用上 TS,各种类型全是 any,上个月想起来准备重构一下,写了半天直接放弃了
    z1154505909
    z1154505909
    Sep 6, 2019
    50
    看了下自己当年写的注释还算够多,不过当年漏洞真你妈多
    mostkia
    mostkia
    Jun 16, 2020
    51
    @luzhh 这。。。什么神仙逻辑,哈哈哈,你能保证多次执行后的效果是一致的吗?中途堵塞了怎么办?
    mostkia
    mostkia
    Jun 16, 2020
    52
    所以低耦合才重要啊,吧整个需求分解成若干个功能块,然后组成一大坨可拆卸的屎山,哪一坨出问题了,不必学习老八吃屎了,只要把有问题的屎拿走换一坨新鲜的安上就可以了,哈哈哈
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   3026 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 96ms · UTC 11:44 · PVG 19:44 · LAX 03:44 · JFK 06:44
    ♥ Do have faith in what you're doing.