19个人们真正编写的垃圾代码片段

其中一个可能是你写的。

伯纳德-巴多 - 5分钟阅读

你见过最垃圾的代码长什么样?

照片:Damir Spanic on Unsplash

在某些时候,它发生在我们所有人身上。你产生了你并不感到自豪的代码。这些代码让你怀疑,"我怎么会写出这样的东西?"这没什么好羞愧的。我们只是人类。有时候,我们就是没有做到最好。

它发生在我身上,发生在你身上,但它也发生在其他开发者身上。我花了点时间,收集了我能找到的最糟糕的代码片断。今天,我将把它们介绍给你们。

然而,我只在一个条件下这样做。你必须向我保证你不会以恶劣的方式对待他们。记住,在某些时候,你可能写过类似的东西。既然如此,让我们戴上豁达的眼镜,玩一玩。第一篇来了!

重新造轮子出错了

常规的布尔类型比较没有返回你要找的东西。你应该怎么做?答案很简单,你自己创建一个。

你见过最垃圾的代码长什么样?

原始资料

 魔法数字

看着这幅图,我不禁要问。如果我们改变其中一个数字会发生什么?可能没有什么好事。

你见过最垃圾的代码长什么样?

原始资料

至少它被分成了几条线

从这块代码的纯粹外观来看,我猜测它是一个学校项目。不用说,我对这位老师表示慰问。

你见过最垃圾的代码长什么样?

原始资料

魔鬼也是一种功能

今天,我们将看到isEven函数的各种实现。这是我们的第一个候选人。我想说的是,我们已经有了一个好的开始。你觉得怎么样?

你见过最垃圾的代码长什么样?

原始资料

希望有一个函数来获取字符串的大小

这个想法在我们的开发者伙伴的脑海中闪过。他没有犹豫一秒钟。并立即实施了它。

你见过最垃圾的代码长什么样?

原始资料

唤醒内在的孩子

虽然听起来很疯狂,但你可以使用表情符号作为变量名称。但你应该以这种方式使用它们吗?请看下面的代码,自己决定。

你见过最垃圾的代码长什么样?

原始资料

到底谁在读提交t信息

如果你有一个同事反复使用相同的提交信息。她可能是这样做的。

你见过最垃圾的代码长什么样?

原始资料

如果这些变化中的任何一个

未来是不可预测的。它可以在一夜之间改变。为了防止这种情况发生,最好还是多加小心。

你见过最垃圾的代码长什么样?

原始资料

购买超宽屏显示器的理由

冗长的变量名并无不妥。只要它们有助于提高代码的可读性。但有时,我们必须问自己 "多长才算长?”

你见过最垃圾的代码长什么样?

原始资料

天才之举

这里没有什么要补充的。我认为这条注释不言自明。

你见过最垃圾的代码长什么样?

原始资料

排版是最好的

类型安全的感觉是很好的。那么如何更好地确保你不会出现任何类型错误呢?这些家伙,他们想出了这个办法。

你见过最垃圾的代码长什么样?

原始资料

如果它起作用,它就是起作用

真正要说的是什么。只要确保参数的总和始终是7。而且这个函数不会失败。

你见过最垃圾的代码长什么样?

原始资料

确保它是真正的Bool

多大程度的悲观才算过分悲观?我想说这个人真的很接近。

你见过最垃圾的代码长什么样?

原始资料

测试驱动的最佳开发方式

我们必须为使用单元测试的做法点赞。但我不禁要问。如果测试是生成随机数字,会发生什么?

你见过最垃圾的代码长什么样?

原始资料

你敢于扩展吗?

我们都在某些时候写过复杂的开关语句。然而,一千行似乎有点太多了。但毕竟有很多鼠标的状态需要覆盖。

你见过最垃圾的代码长什么样?

原始资料

试用Switch语句

你认为未来的计划是要扩大这个Switch吗?没有什么了,只是要相信它。

你见过最垃圾的代码长什么样?

原始资料

数学是困难的

有时,使用外部帮助并不可耻。实际上存在的是--甚至是包。你敢猜它每周有多少次下载吗?它超过了15万次。

你见过最垃圾的代码长什么样?

原始资料

当辉煌的想法流淌时

有时,你只是觉得自己是个叛逆者。你必须按自己的方式做事。但我想我们可以同意,这种类型的代码不应该进入代码审查。

你见过最垃圾的代码长什么样?

原始资料

当你是个码农但你的激情是书法时

我尝试了不同类型的字体。但我不得不说,它从未走到这一步。如果这让你怀疑 "盗版软件是这样写的吗?" 你并不孤单。

你见过最垃圾的代码长什么样?

原始资料

最后的思考

我希望你在看这些例子时有个好心情。我当然也是如此。欢迎让我知道你最喜欢的是哪一张。或者如果你有一些可耻的照片要分享,不要害怕在评论中分享它。

我在浏览这些代码片断时感到很愉快。它让我想起了我早期的日子。在我的职业生涯中,我写了一些我并不自豪的代码片段。但幸运的是,没有人对它们进行截图。或者至少我希望如此。

Logo

为武汉地区的开发者提供学习、交流和合作的平台。社区聚集了众多技术爱好者和专业人士,涵盖了多个领域,包括人工智能、大数据、云计算、区块链等。社区定期举办技术分享、培训和活动,为开发者提供更多的学习和交流机会。

更多推荐