一堆注释代码,毫无代码格式可言,大部分时间都浪费在理逻辑,我接手前项目经过好几个人手,改的乱七八糟,每天都想砸键盘,辞职的心都有了,怎么办?
![]() | 1 allgy OP 老项目是 php 框架 tp3.1 写的 |
2 xeis 2017-09-07 18:18:26 +08:00 via Android 重构 |
![]() | 4 Light3 2017-09-07 18:23:46 +08:00 幸好只是维护..开发咋整 你都不知道有没有写公共方法~ 不过我觉得砸键盘倒是不用 tp 至少还是有序可循的.. |
![]() | 5 66beta 2017-09-07 18:28:45 +08:00 重构 哦不,换框架重做! |
![]() | 6 roys 2017-09-07 18:32:33 +08:00 走人吧~ 我页经历过类似项目。 |
![]() | 10 UnisandK 2017-09-07 18:54:27 +08:00 ![]() 换 HHKB,砸之前想一想价格 |
![]() | 12 scys 2017-09-07 19:22:46 +08:00 没法,截断一个模块出来,看看能不能一个个模块重构。 大项目一个人要重构太难。 |
13 Adamla 201709-07 19:26:40 +08:00 给你备多个键盘以防之 |
![]() | 17 dream7758522 2017-09-07 22:38:30 +08:00 via Android windows 运行里输入 osk |
![]() | 18 Marlon 2017-09-07 22:42:03 +08:00 via iPhone 慢慢理,维护还好说吧, |
![]() | 19 chinvo 2017-09-07 22:46:14 +08:00 直接把键盘砸掉避免之后再费劲砸 |
![]() | 20 allgy OP @dream7758522 不明觉厉 |
![]() | 23 Sanko 2017-09-07 23:03:36 +08:00 via Android 删库跑路 |
24 t123yh 2017-09-07 23:27:39 +08:00 via Android 如果浏览器兼容不用怎么考虑的话,可以尝试一下前端直接强上 Vue 进行渲染 |
![]() | 25 TuxcraFt 2017-09-08 01:04:20 +08:00 告诉老板 要么涨工资 要么走人…… |
![]() | 26 cxbig 2017-09-08 01:29:42 +08:00 写新的 > 额外津贴 > 走人 |
![]() | 27 msg7086 2017-09-08 02:29:51 +08:00 维护啥?改 bug ?那就慢慢改咯。烂项目改动耗时自然偏多,平时改一个 Bug 半天,换上烂项目改一个 Bug 要两周,这很正常的。心态放平,慢慢做就是了。跟上司或者老板说清楚情况,让他们充分了解工作的难点,给你充足的时间,我觉得就足够了。毕竟是按照时间发你工钱的,同样的时间,同样的收入啊。 |
![]() | 28 cmonday 2017-09-08 05:22:13 +08:00 建议要求立项重做,好歹有个盼头。维护恶心的老代码除了培养耐心之外对个人提升没什么益处,远不如维护设计合理的项目或者开发有挑战的新项目。 如果不答应的话,除非薪水特别诱人,还是走人吧。 |
![]() | 29 peneazy 2017-09-08 05:45:07 +08:00 via Android 看看你的上级人怎么样,人不行的话,果断走人 |
![]() | 30 sfree2005 2017-09-08 05:46:19 +08:00 via Android 如果不能全部重构,至少可以提议部分独立的业务重构。就算是我自己的项目,看到自己一两年前写的代码我也有砸键盘的冲动,重构会是我的唯一选择。 |
![]() | 31 cxh116 2017-09-08 07:19:21 +08:00 via Android 你是没有接手过更加糟糕的,一个仓库的 php 项目,维护了 5 年多,里面有用三种框架来实现不同的功能。 |
32 AEANWspPmj3FUhDc 2017-09-08 07:52:33 +08:00 via Android 再把代码恶化一下。 等着下一个接盘侠。 |
![]() | 33 rason 2017-09-08 08:30:34 +08:00 以我多年经验,换一家很大可能也是这样的,骚年 |
![]() | 34 xomix 2017-09-08 08:32:42 +08:00 …………没什么啊,就当学习一下反面教程就好了。 |
![]() | 35 zlhsvc 2017-09-08 08:33:00 +08:00 维护还好点,开发新功能才要你命 |
36 klgd 2017-09-08 08:40:02 +08:00 |
![]() | 37 jadetang 2017-09-08 08:46:42 +08:00 via Android ![]() 我觉得那些劝你走人的都是在搞笑,工作中肯定会碰到遗留代码的。所谓的重写,其实也就是在造新的遗留代码罢了。大家都看过 重构 那本书,这是实践的好机会。当然,重要的是要管理好老板的预期,把事情说的严重一点。 |
![]() | 39 FYK 2017-09-08 09:06:42 +08:00 我们的主站版本还在 3.1 之前,不过我只是个新人,还在做基础工作,涉及不到源代码。这里就祝福一下你啦。 |
![]() | 40 allgy OP @t123yh 私下跟前端讨论过,为什么不搞分离,他说不想碰,最令我惊讶的是一个前端归产品部管,上级不懂技术,部门聚餐都是跟产品设计一起 |
42 caijihui11 2017-09-08 09:14:31 +08:00 理理逻辑也是程序员的工作之一。 注释先别管,万一别人有用呢 |
![]() | 43 allgy OP @cxbig 我现在想法是坚持到明年跳槽季吧,想转前端了,说实话自己能力吧也有欠缺,能力和工作氛围是匹配的 |
![]() | 46 ferstar 2017-09-08 09:22:16 +08:00 ![]() 劝走的真是够了,讲道理工作中给前人擦屁股基本上避无可避,逃得了这家逃不了下家。说说我的经历吧,前阵子刚把一个全用 Shell 和 Perl 拼起来的烂摊子收拾完毕,用 Python 重写,搞完系统性能提高了 300 倍(没错是 300 倍,主要是前面的摊子实在太烂,随便加个多线程然后并行计算就能提速)。刚接盘时全局变量满天飞,各种 function1,function2,function3 简直马勒戈壁,Perl 的那些我了个去的#$%,当时我也很绝望啊,还好坚持下来了,为啥能坚持?是因为上家辞职闪人就是接了个要把 demo 速度拉上生产环境上线的烂项目,当时走的那叫一个潇洒,裸辞近一个月才找到这家,没想到还是坑,还好填平了。 PS:偶尔逛了下拉钩,发现上家 HR 还在招接盘侠。推荐楼主看下这本书《凤凰项目:一个 IT 运维的传奇故事》,我是很收鼓舞的 |
![]() | 48 Felldeadbird 2017-09-08 09:22:48 +08:00 既定事实,基本没办法再修改风格的了。只能按照:先在小部分进行优化,确保之前的没错误。一点一点迁移到新架构中。。。 反正,这事情很漫长的。楼主你遇到一点事情就这样,和我三年前差不多情况。不过那时候我没打算辞职。只想着重构他。 |
![]() | 49 allgy OP |
![]() | 53 Qlccks2 2017-09-08 09:28:14 +08:00 多买几个键盘旁边放着,省得砸坏了没得用。 |
54 l00t 2017-09-08 09:30:06 +08:00 一边砸键盘一边慢慢改吧。这都走人的话还真没多少工作合适的了。维护老代码是再常见不过的工作内容了啊。 |
![]() | 55 allgy OP @klgd 嗯,人的因素会大一些,但是用结构好的框架本身会限制编码者遵循规范从而引导项目朝着良性发展 |
![]() | 56 x86 2017-09-08 09:31:21 +08:00 via Android 跟我比惨吗?手上还有个 tp3.2 的就项目,代码看的我想打人,真的是用 tp 不可怕,写的那么烂才是真的可怕 |
58 abujj 2017-09-08 09:33:11 +08:00 via Android 哈哈哈哈哈 |
![]() | 60 allgy OP @caijihui11 之前看过有人讨论过,为什么一些人喜欢留注释代码,好像是 防御性开发,我也忘记了怎么说 |
![]() | 61 jswh 2017-09-08 09:37:33 +08:00 重构也很有成就感啊。看一件事慢慢完成,和看一件事慢慢变好,对我来说都挺好的 |
![]() | 62 allgy OP @ferstar 哈哈,理解你在填坑中的心情,现在情况是 bug 接踵而来,一个压一个,他们根本不关心代码是如果优雅,只要结果就是你解决了 bug |
![]() | 63 815lbh 2017-09-08 09:39:43 +08:00 有注释都不错了,你要知道没有注释的老项目,会让你哭。 |
![]() | 64 PazuLee 2017-09-08 09:45:46 +08:00 其实更坑的是你老板不知道。。。。所以有机会的话先跟老板诉诉苦吧,起码让她知道你干了啥。。。这样再难怼出来也算有价值的。 |
![]() | 65 2ME 2017-09-08 09:57:44 +08:00 所以是所有逻辑都写在控制器 然后模型没有一行代码的那种项目吗 .. |
66 nullcoder 2017-09-08 10:00:55 +08:00 那些说重构的,你们给 PO 主写测试? |
67 rswl 2017-09-08 10:13:23 +08:00 你看过一份 20 多 M 的 c 文件吗没有注释 |
69 nicevar 2017-09-08 10:27:37 +08:00 维护性的工作,不要说的那么夸张,况且才四五年前的,主要算史前那一些运营商的项目都是大爆炸时代的了,不要听上面的人瞎扯,轻易的去重构,先熟悉透了做合理的小块修改,以前有个同事,年轻人太冲动,有个维护的项目跑着 100 万级别的用户,让他别乱动他非要去改一个不太熟悉地方,结果造成大面积用户无法使用,投诉电话打爆了 |
70 SilentDepth 2017-09-08 10:30:12 +08:00 ![]() 如果除了接盘别无选择的话: 1. git init && git commit --all 2. 按自己喜欢的风格全文格式化代码,然后 git commit 3. 如果可以,移除掉所有未被实际使用的引用(没开发过 PHP,一些 IDE 应该有这个功能) 4. 如果可以,整理出所有模块的依赖情况和业务线(如果这个项目存在业务线的概念相对独立的功能链) 5. 从被依赖数最小的模块开始整理业务逻辑 & 注释 & 重构,注释写输入输出即可 5.1. 如果可能,配合一点简单的单元测试(为了防止 Willow 无意点火饥荒梗) 6. 调整作息,保证稳定的工作节奏,非工作时间果断避开所有跟这个项目有关的事情 6.1. 心态决定一切 当然,如果你有别的选择,或者实际情况已经明显超出了你的能力范围,或者老板要求明天就上线,或者有任何其他重要因素促使你拒绝 take this shit,珍爱生命,果断走人(丢锅) |
![]() | 71 qiqico 2017-09-08 10:41:01 +08:00 管理好上级预期,列一个计划并随时更新,让上级了解你工作的艰巨,以及你付出的努力。。 当一天和尚,撞一天钟,反正按时间领薪水的。。 |
![]() | 72 allgy OP @Felldeadbird 嗯,有时候其实没有太多选择,自己也是个普通人,只能凭这个吃饭,不是什么的大神,随便跳就有橄榄枝 |
![]() | 77 wolffn 2017-09-08 11:09:26 +08:00 刚工作的时候,都会不爽 等工作一段时间发现,这就是工作的主旋律。 |
![]() | 78 allgy OP @SilentDepth 嗯,感谢给出这么详细的建议 |
![]() | 85 silov 2017-09-08 12:14:36 +08:00 问个镜像问题:项目第一个 /批开发者,如何避免后人接手的时候产生此类情绪? 我现在就是团队的后段项目第一个开发者,尽量完善一些代码和注释,尽量规范化,但是业务变更有时候是很快的,项目要跟上进度需求很容易产生一些逻辑混乱的代码。。。这种事情又需要怎么避免呢。。。 |
87 fishman 2017-09-08 12:27:59 +08:00 via Android 说走人的,你们都不维护项目吗? |
![]() | 89 qiumaoyuan 2017-09-08 12:49:09 +08:00 有能力和权力就直接改。没能力或者没权力就走。抱怨不解决问题。 |
![]() | 90 msg7086 2017-09-08 13:08:35 +08:00 对于 Append 我跟你说,单个回复里可以回复很多人,不需要一层一层回,避免触发 1800 大法。 |
91 wangcansun 2017-09-08 13:10:34 +08:00 via iPhone 要不要来一次重构啊,多爽 |
![]() | 92 silov 2017-09-08 13:26:12 +08:00 |
![]() | 95 server 2017-09-08 14:22:02 +08:00 忍 或者 滚, |
![]() | 96 fhefh 2017-09-08 14:24:18 +08:00 慢慢把坑填好~~ 我填了好几次坑了 反正能用 稳定运行 |
![]() | 97 xzg1993 2017-09-08 14:57:31 +08:00 我真觉得我是个好人把代码都重构了恶心的代码自己都看不下去 |
![]() | 98 ashin 2017-09-08 15:01:11 +08:00 我也经历过类似项目,维护过的人最后都离职了 |
![]() | 99 Michelle1991 2017-09-08 16:36:59 +08:00 不是好正常的事情?如果做不了赞同忍或滚,所有工作都是自己分析衡量是否可以做,是否决定做,决定就不要考虑太多,抱怨无法解决问题,尽力解决问题,尽力后无法解决自己觉得无法接受了那就滚,只是别滚到同样的坑~忌抱怨心态 |
![]() | 100 em84 2017-09-08 16:49:58 +08:00 胃镜做起来多爽(滑稽) |