真想给自己一耳光,几年前居然是这么烂的水平,目前修改得快要怀疑人生了,把一堆屎山不仅要啃完还要耐心品尝、细嚼慢咽的茫然感觉谁懂
![]() | 1 naihs 2019-09-05 10:22:15 +08:00 ![]() 换个角度想想这说明自己这几年成长迅速。 |
![]() | 2 kisshere OP ![]() 比看自己几年前扣扣空间发表的非主流文字还尴尬 |
![]() | 3 dadawenxi 2019-09-05 10:22:57 +08:00 恭喜喜提屎山一座 |
![]() | 4 loryyang 2019-09-05 10:26:25 +08:00 ![]() 我告诉你一个很遗憾的真想,再过几年,你依然发现现在重构的代码是屎 |
![]() | 5 xiangyuecn 2019-09-05 10:27:44 +08:00 ``` do { 好不容易咽下去一点,...(过了一会)...,又要吐出来重新嚼一遍,然后再咽下去 } while loop ``` 这条回复有味道 |
![]() | 6 luzhh 2019-09-05 10:37:18 +08:00 try{ xxThread.do(); } catch { e.print; } // 睡眠一秒,等线程差不多执行完后再获取数据 sleep(1s); getInfo(); 这是我当年写过的代码,交接给你别人的时候,看到这里简直惊呆了。 |
![]() | 7 12tall 2019-09-05 10:38:33 +08:00 哈哈哈,前两天将入门时写的 1400 行 sql,减少到了 800 行,表示现在似乎才刚入门 |
8 2255cn 2019-09-05 10:47:15 +08:00 看去年写的业务已经理解不到当时的逻辑了。。每行注释也猜不透为什么当时如此处理。 |
9 littlebaozi 2019-09-05 10:51:29 +08:00 回想起自己小学时代码都不会写,岂不是要把自己气死,哈哈 |
![]() | 10 robinchina 2019-09-05 10:53:53 +08:00 敢吃………………重构!给勇士敬一杯! |
![]() | 11 d0m2o08 2019-09-05 10:58:06 +08:00 我们这有个祖传项目,都是纯手撸的 jsp 页面,领导已经招了 3 批人修改了,每次都是干几天就跑了 2333 |
![]() | 12 adoal 2019-09-05 11:02:24 +08:00 ![]() 以我的浅薄经验,几年前的代码只能算是一坨屎,要重构几次之后才能成为屎山 |
13 turi 2019-09-05 11:06:48 +08:00 ![]() @robinchina 一遍吃屎,一遍喝酒。这画面太美,不忍直视 |
![]() | 14 smallpython 2019-09-05 1:11:26 +08:00 能举个具体的例子吗? 到底怎样算不好的代码? 你又是怎么改的? |
15 edwin2ex 2019-09-05 13:41:56 +08:00 我也是,在吃屎中 |
16 hantsy 2019-09-05 13:49:14 +08:00 各种 KPI 压力下产生的代码基本上都是屎。。。 |
![]() | 17 utoyuri 2019-09-05 13:51:27 +08:00 那就屎上雕花 |
![]() | 18 patx 2019-09-05 14:03:23 +08:00 via Android 能意识到以前代码有问题,说明进步了 |
21 Greendays 2019-09-05 14:39:05 +08:00 为什么这么闲。。。我现在要改别人写的代码,那才叫。。。 |
![]() | 22 JohnLou 2019-09-05 14:42:28 +08:00 via Android 代码能运行不出错就是好的 |
![]() | 23 pcbl 2019-09-05 14:58:56 +08:00 via Android 这 if else for while 多层嵌套竟然不出问题,卧槽,还是以前的我比较牛 |
![]() | 25 mamahaha 2019-09-05 15:22:58 +08:00 初始代码的时候想的是业务逻辑,代码重构的时候想的是结构和性能,两者不适合拿来对比。 |
26 ShinichiYao 2019-09-05 15:29:37 +08:00 重构完发现原来运行的好好代码跑崩了 |
27 24KPureFather 2019-09-05 16:19:19 +08:00 @kisshere 你这回答真基霸刁钻 |
28 24KPureFather 2019-09-05 16:20:52 +08:00 @luzhh 我以前这是这样操作过,那是刚毕业的时候 |
![]() | 30 JimmyTinsley 2019-09-05 17:23:54 +08:00 最近想重构一下大学的毕设课题, 重构了 30%实在干不下去了... |
![]() | 31 avenger 2019-09-05 17:34:31 +08:00 via iPhone 没有单元测试敢重构? |
![]() | 32 lowman 2019-09-05 17:39:24 +08:00 吃屎不忘拉屎人 |
![]() | 33 NotNil1 2019-09-05 17:47:26 +08:00 让 重构的成本 > 重写的成本 就不用面对这种问题了 |
![]() | 34 JerryCha 2019-09-05 17:51:45 +08:00 我做毕设的时候 OpenCV 处理的部分直接挂在 UI 主线程下执行,还好挺快的没卡死 |
![]() | 35 xuanwu 2019-09-05 18:10:13 +08:00 建议业务相关部分用中文命名标识符 |
36 way2create 2019-09-05 18:44:12 +08:00 重构自己的代码没什么...重构别人的屎山才烦 |
37 meeken 2019-09-05 19:38:11 +08:00 重构自己的起码知道什么是什么好吧... |
![]() | 38 KunMinX 2019-09-05 19:44:13 +08:00 |
![]() | 39 WispWind 2019-09-05 19:55:07 +08:00 via Android 我看自己上个月的代码都像一坨翔。。 |
![]() | 40 beastk 2019-09-05 19:58:51 +08:00 via iPhone 我们不生产屎,我们只是屎的搬运工。 |
41 qile1 2019-09-05 21:36:47 +08:00 via Android @luzhh 你这个代码提醒了我,最近写串口通信,发查询放到线程里面,几秒后无数据直接返回 你是个方法不错 |
![]() | 42 iPhoneXI 2019-09-05 21:42:46 +08:00 via Android 巧了,最近重构项目我也这么认为的 如果一段时间没看的老代码,再看时已经很难看懂了,那么是好事:说明以前你写的比较烂,进步的机会来了。详细来讲,这是一个可以通过重构旧代码、使其逻辑更加清晰,从而提升架构水平的机会。一定要抓住。https://twitter.com/tualatrix/status/1169483566754852865 |
43 justfortest 2019-09-06 07:26:13 +08:00 以前以为我 3 年前的代码是屎山,直到去了其它公司工作,我发现我以前的代码是一股清流,经历的两家互联网公司的代码都是一言难尽。 |
![]() | 44 xuanbg 2019-09-06 07:55:51 +08:00 重构代码才能进步,否则无论你写多少代码,都只是原地踏步。为完成任务而写代码的时候,你是不会想着怎么写更好的,做到正确实现功能,没有 bug 已经是竭尽全力了。 |
![]() | 45 wamson 2019-09-06 08:57:11 +08:00 via iPhone 最近重构了半年前写的代码,也是屎一样。 |
46 me876 2019-09-06 09:02:24 +08:00 看自己以前写代码都是这种感觉,你不要惊讶,这只能说明你现在进步了 |
![]() | 47 luzhh 2019-09-06 09:45:28 +08:00 @limerence @codz 线程用 callback 或者直接改成一个同步的方法等待操作完再查询数据。 @24KPureFather @Resource 毕业后的第一个项目,看到代码后直接头皮发麻,还有其他导致死循环的代码。。。 |
![]() | 48 root8080 2019-09-06 10:26:18 +08:00 重构自己的屎山是真没话说 重构别人的才叫真服气 根本不想碰啊啊啊啊 唉 |
![]() | 49 nyanyh 2019-09-06 10:33:22 +08:00 当初第一次写 Typescript 的时候是基于一个老项目改的,为了更快地用上 TS,各种类型全是 any,上个月想起来准备重构一下,写了半天直接放弃了 |
50 z1154505909 2019-09-06 15:07:43 +08:00 看了下自己当年写的注释还算够多,不过当年漏洞真你妈多 |
![]() | 52 mostkia 2020-06-16 19:10:34 +08:00 所以低耦合才重要啊,吧整个需求分解成若干个功能块,然后组成一大坨可拆卸的屎山,哪一坨出问题了,不必学习老八吃屎了,只要把有问题的屎拿走换一坨新鲜的安上就可以了,哈哈哈 |