这几个月都在重构代码,心累

2019-10-10 12:41:51 +08:00
 winterbells

前两个月:Java + kotlin + MVC + MVP + MVVM 巨型混合项目 A 这一个月:Java + MVC + MVP 老年大型项目 B

项目 A 我大概负责了 3/5,原先的工程简直就是回收站,什么都有,参与人数多,每个人风格都不一样。一公有十来万行代码(不带 XML )。都快把人看疯了,重写都比重构快。 最可气的是打补丁式代码。

真是服了这帮人,到处能看到某一个变量被调用了十几次。所以知道为什么代码这么多了吧 (#吐血

后来放弃了,时间不够,加班加点也赶不上,尽量按照它原来的代码转成 kotlin,主要把 MVC 转成 MVVM。一点点抠逻辑得做半年


项目 B 好像有个五六年了,各种历史遗留问题,逻辑巨复杂。本来有个页面要我写的,看了一下 activity 2000+ 行,presenter 2000+ 行,还不带封装到 SDK 里的。我把页面画好后就还回去了。。

重构真是到处受气,一会儿和老版本不一样,一会儿和 iOS 不一样。老版本有些 bug 还要带上,不然要么说逻辑不一样,要么说 UI 效果不对。还有 iOS 有问题去找 iOSer 啊,老让我们 Androidor 改干嘛?

还有个废物队友拖后腿就不说了,谁爱管他谁管去。。。


项目 A 做好之后就死了。。

3252 次点击
所在节点    职场话题
15 条回复
itenyh
2019-10-10 12:53:38 +08:00
特别看不惯这种打补丁不解决根本问题的做法,但为了赶项目进度,我只有临时打补丁先解决一下
sansecy
2019-10-10 13:11:40 +08:00
我这边也是,老项目,一个 activity 千把行,都不敢改,就怕表现不一致
wangkun025
2019-10-10 13:13:09 +08:00
Windows 都打补丁,大家也就别太傲娇了
Cbdy
2019-10-10 13:14:59 +08:00
很多时候我也在想这个问题,有这样一些观点:

“比如打工就是用时间、输出换钱”
“做完需求功能 OK 就完事儿”
“能用就行了,代码写得再好又有什么用”

然而事实确实似乎如此,毕竟做程序员就是打工糊口
除了创业,有多少人把手头写的代码作为自己的事业乃至心血?

所以我估计大多数公司的代码、架构是比不上外面的开源项目的
jimrok
2019-10-10 13:42:14 +08:00
去大厂也一样,经手的人更多,就像爬一座巨大的屎山。
mrant
2019-10-10 15:12:27 +08:00
我一个前端,
公司重构了十几年积累的老 OA 项目,业务逻辑缠绕的复杂程度远远大于前端的技术难度,崩溃
eric1202
2019-10-10 15:14:40 +08:00
经手多的,时间紧迫的,必然是这样的
PandaHero233
2019-10-10 15:16:14 +08:00
我最讨厌不写注释的
sadfQED2
2019-10-10 15:17:41 +08:00
还好我们公司必须经过 review,刚来的时候特别不舒服,老让我改命名,改代码位置什么的,但是现在发现,所有人代码风格一致,所有代码清晰明了,真爽
insert000
2019-10-10 16:05:48 +08:00
重构已经很不错了,没让你在屎山上 加功能,还不停的迭代,就偷着乐吧
Soulballad
2019-10-10 16:23:24 +08:00
经历过一次整体重构,至今印象深刻
winterbells
2019-10-10 16:53:08 +08:00
@itenyh # 1 这项目以前看起来并不着急。。

@Cbdy # 4 毕竟是给自己用的,稳定最好,谁都不想背锅

@jimrok # 5 我都去不了大厂😭

@mrant # 6 不如重写。。。


@PandaHero233 # 8 基本不写,文件名、方法名就能看出来用途。除非逻辑复杂加个注释


@insert000 # 10 去年经历过了 QAQ,真的是牵一发而动全身
jackleelss123
2019-10-10 23:23:30 +08:00
重构为啥不重写呢!
winterbells
2019-10-11 00:11:40 +08:00
@jackleelss123 重写就是从零开始,但项目不能中断,该更新的还是要更新。。。

升级船新版本是最好的方法,但这东西花费太大,公司不愿意做
javaWeber
2019-10-12 16:53:27 +08:00
我现在就是这个处境。。好痛苦。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/607828

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX