老代码,我该怎么办?

密斯大白 2017-07-12 02:22:37
加精
大家好,我是CSDN程序人生公众号小编,帮助大家一起解决开发中遇到的点点滴滴的问题。

今天的问题来了:

你入职一家新单位,被告知需要维护一个老产品,经理找质管给你开通了 svn 权限,告诉你迁出哪个分支——就是那个十年前已经定型的分支,就是那个超过 6 代程序员维护过的分支——然后告诉你说,就在这个分支上改,添加一个新接口,以便支持 H5 Video。于是你开始看代码,云山雾罩,各种痛苦,完全搞不懂业务逻辑和代码的关系,也闹不明白这块代码为什么这么写那块代码是几个意思。你战战兢兢如履薄冰思前想后寸步难行。

你去问进来 5 个多月还没转正的老同事,他告诉你他也不懂,让你凑合着加个新接口实现了功能就行。加了新功能就行。你去问干了快一年的资格更老的同事,他叮嘱你千万别动里面的代码,千万别管里面什么样,就在外面包一层,先交付新功能,其它的有时间再说,里面的逻辑十年没人动过了,没有一个人能说清楚怎么回事,你要是改,一不留神就遍地狼烟。

你该怎么办?
...全文
5796 69 打赏 收藏 转发到动态 举报
写回复
用AI写文章
69 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_33321491 2018-08-29
  • 打赏
  • 举报
回复
把这部分代码搞懂,然后你就是全公司最懂写代码得人。站起来了。
www_boyunyun_com 2018-08-27
  • 打赏
  • 举报
回复
你需要一本<程序员重构代码并跑路指南>
长腿IT小哥 2018-08-23
  • 打赏
  • 举报
回复
老代码建议不要动,自己写新代码,还省去了看老代码的时间。
天外怪魔 2018-08-21
  • 打赏
  • 举报
回复
这个是假冒的小编,大家注意看,等级只有1级,不是内置用户组的。
糖三豆 2018-08-20
  • 打赏
  • 举报
回复
引用 29 楼 qqwenqqqi 的回复:
理想的维护状态:
用适配器的思维进行一点一点的重构,尽可能的熟悉业务逻辑,找出业务逻辑的缺陷,
接着写文档,干擦屁股的活儿(这是在时间有限,只维护这一项产品的时候)最后这个项目就可以随意的揉捏了。

普遍的状态:
当然上面说的情况是理想状态,但是一般老板和pm有时间预算的,在这种情况下,普遍只有先从经理说的分支哪儿入手,
尝试写H5 VIdeo code. 最后出来的结果有可能有BUG。只有BUG出现了从点到面去维护了,因为先让产品上线就是金钱。

Boss希望的状态:
1.如果是希望快速的开发出来走第普遍状态解决
2.如果是希望走产品质量优先走理想状态重构解决

闲谈:
从接手这个项目开始,你会发现代码不可控是多么的纠结和无奈,你在该基础上开发就很容易有BUG。
所以接手这个项目的第一思维就是获取代码的控制权!
从这个角度解释就会发现:代码的易读性多么的重要,要写通用的代码,写规范的代码,项目文档对交接是多么的重要。
你为公司擦屁股,虽然是吃力不讨好的活儿,但这是对自己的负责,对公司的负责,对下一任程序员的负责。
你不擦屁股,总有人擦屁股,优质的程序员普遍具有擦一切屁股的能力,还热衷于擦屁股。


说的有道理
三只坚果 2018-08-05
  • 打赏
  • 举报
回复
别闹腰不好 2018-08-03
  • 打赏
  • 举报
回复
根据手机壳改变主题颜色?
zds小胜 2018-07-21
  • 打赏
  • 举报
回复
新手学习java想问一下工作后主要应用那些知识
feichongcao 2018-07-16
  • 打赏
  • 举报
回复
坑坑相报何时了
xxiang1x 2018-07-15
  • 打赏
  • 举报
回复
重构
z-xiaoyao 2018-06-30
  • 打赏
  • 举报
回复
很好的博客,很详细的
那条大鱼 2018-06-13
  • 打赏
  • 举报
回复
请问怎么发帖子,我是菜鸟
tw 2018-06-12
  • 打赏
  • 举报
回复
删库,跑路。。。。。。。
江湖评谈 2018-06-07
  • 打赏
  • 举报
回复
电信的那个号百项目 ,来之前已经走了十个维护那代码的程序员。
hi-ruofei 2018-05-29
  • 打赏
  • 举报
回复
除非弄明白了,否则千万别动
letMeAlone_ 2018-05-27
  • 打赏
  • 举报
回复
引用 22 楼 chenandczh 的回复:
加 文件 ,加 代码,加接口 ,加 逻辑,听老人的,没错 ,别改里面的业务 就对了,否则出BUG SVN找出记录是你改的就OVER了
MD,SVN的记录功能到底是哪个王八蛋想的
letMeAlone_ 2018-05-27
  • 打赏
  • 举报
回复
!!!不好意思,我有话说。我只是稍微碰了一下,就只是轻轻地碰了一下,整体都垮了,我默默把代码还原,但是产品让我把旧的也给更新了。我滴娘亲耶~
jlqwc 2018-05-24
  • 打赏
  • 举报
回复
pugongyingpgyidc 2017-07-23
  • 打赏
  • 举报
回复
大大大大大
xxxuan 2017-07-22
  • 打赏
  • 举报
回复
弄别人的逻辑业务部很麻烦,你做接口,啥也不问,加壳,套壳,完成新的即可
加载更多回复(48)

590

社区成员

发帖
与我相关
我的任务
社区描述
提出问题
其他 技术论坛(原bbs)
社区管理员
  • community_281
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧