如何维护同事的在'防御性编程'下写的代码

51 天前
 qiangguodiceng

背景

初期情况

问题发现

当前困境

公司情况

寻求建议

3117 次点击
所在节点    职场话题
37 条回复
billbur
51 天前
停止污名化“防御性编程”,垃圾代码就直接说垃圾代码
murmur
51 天前
我日这个 aaaa 和 dddd 真忍不了了
yanyao233
51 天前
我草看了那么多说搞防御性编程的帖子我都以为是开玩笑,没想到真有傻逼搞啊
tool2dx
51 天前
几何算法你不可能指望写法有多优雅的,本来就是一大堆算法,外部都是调用 API 。

我由于项目需要,引进了一个 google/s2geometry 算法库,这个改起来才叫一个吐血。
Lyndi
51 天前
菜就多练
retrocode
51 天前
菜就是菜, 不用给自己找补, 大伙都是开开玩笑得了, 你真这么写代码啊.
yinmin
51 天前
这个代码还算可以。看不懂的部分可以扔给 ai 解释,你可以试试 claude 3.5 sonnet (这个很强,真根据需求能写代码)、deepseek coder (这个便宜、国产用起来方便)
GeruzoniAnsasu
51 天前
菜就多练+1

没感觉这代码有多逆天,只是写算法来渲染的玩意都比较难看懂很正常,但 AI 擅长这个。 丢给 copilot 让它教你读
XiLingHost
51 天前
防御性编程防的是用户不是同事啊......这个词一般是说代码有极高的容错,完全不相信用户输入,能校验就校验
iyiluo
51 天前
防御性编程是指入参不可靠,需要做好防御。你这是参与同事烂代码开发,现在有了 ai ,我看见烂代码没那么怂了,以前是真头疼
estk
51 天前
说不定开发者自己本人都不愿意维护
xiangyuecn
51 天前
复杂逻辑的代码本身就难看懂,几何运算各种 x y 值
whp1473
51 天前
实际情况是,一个需求老大预估 1 天,但因为代码写的难维护,3 天了还在各种改 if else 、线程并发、队列跳来跳去。这种实际情况就告知老大就可以,可以改但需要时间,然后代码能不大改就不要大改,因为你永远不知道这个看起来没用的 if 是不是搞了骚操作。
smdbh
51 天前
这个显然不是“防御性”编程, 也不是防御性编程,
Vitumoc
51 天前
没看出同事的代码有特别大的问题,最多就是变量名随意或者注释偏少

感觉代码的复杂度是来自于图形业务本身,我不认为你同事故意增加了复杂度,最多只能说他没有刻意的降低复杂度

这种图形业务想把代码写优雅很难,你的应届生同事不一定做得到,实际上你也不一定做得到

另外,再简单的任务也不能只给自己留一个小时,更何况这是别人的代码
StrangerA
51 天前
几何算法真的就是这样的了,人家好歹给你留了注释。

你不愿意去仔细看那是态度问题,看了看不懂确实是能力问题。

老板没骂错。

虽然上面的代码格式有点问题( eslint + prettier 可破)以及变量用得有些狂野(上 typescript 限定类型能好点),但也别指望几何算法能靠这些功夫好上多少。
mosfet
51 天前
他是应届生啊,标准的“教科书”写法啊
只能说你们公司既没规范文档,也没相关培训
你网上找份规范文档,要求大家都按上面的来
Laysan
51 天前
别啥都叫 防御性编程
Laysan
51 天前
本来一个褒义词硬生生干成了贬义词,就像卧龙凤雏
LiuN1an
51 天前
上来就告诉老板你花一个小时就能改完别人的代码,然后自己打脸。还是入世太浅

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

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

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

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

© 2021 V2EX