你见过最垃圾的代码长什么样?19 种垃圾代码片段!
在某些时候,它发生在我们所有人身上。你产生了你并不感到自豪的代码。这些代码让你怀疑,"我怎么会写出这样的东西?"这没什么好羞愧的。我们只是人类。有时候,我们就是没有做到最好。
它发生在我身上,发生在你身上,但它也发生在其他开发者身上。我花了点时间,收集了我能找到的最糟糕的代码片断。今天,我将把它们介绍给你们。
然而,我只在一个条件下这样做。你必须向我保证你不会以恶劣的方式对待他们。记住,在某些时候,你可能写过类似的东西。既然如此,让我们戴上豁达的眼镜,玩一玩。第一篇来了!
重新造轮子出错了
常规的布尔类型比较没有返回你要找的东西。你应该怎么做?答案很简单,你自己创建一个。
魔法数字
看着这幅图,我不禁要问。如果我们改变其中一个数字会发生什么?可能没有什么好事。
至少它被分成了几条线
从这块代码的纯粹外观来看,我猜测它是一个学校项目。不用说,我对这位老师表示慰问。
魔鬼也是一种功能
今天,我们将看到isEven函数的各种实现。这是我们的第一个候选人。我想说的是,我们已经有了一个好的开始。你觉得怎么样?
希望有一个函数来获取字符串的大小
这个想法在我们的开发者伙伴的脑海中闪过。他没有犹豫一秒钟。并立即实施了它。
唤醒内在的孩子
虽然听起来很疯狂,但你可以使用表情符号作为变量名称。但你应该以这种方式使用它们吗?请看下面的代码,自己决定。
到底谁在读提交t信息
如果你有一个同事反复使用相同的提交信息。她可能是这样做的。
如果这些变化中的任何一个
未来是不可预测的。它可以在一夜之间改变。为了防止这种情况发生,最好还是多加小心。
购买超宽屏显示器的理由
冗长的变量名并无不妥。只要它们有助于提高代码的可读性。但有时,我们必须问自己 "多长才算长?”
天才之举
这里没有什么要补充的。我认为这条注释不言自明。
排版是最好的
类型安全的感觉是很好的。那么如何更好地确保你不会出现任何类型错误呢?这些家伙,他们想出了这个办法。
如果它起作用,它就是起作用
真正要说的是什么。只要确保参数的总和始终是7。而且这个函数不会失败。
确保它是真正的Bool
多大程度的悲观才算过分悲观?我想说这个人真的很接近。
测试驱动的最佳开发方式
我们必须为使用单元测试的做法点赞。但我不禁要问。如果测试是生成随机数字,会发生什么?
你敢于扩展吗?
我们都在某些时候写过复杂的开关语句。然而,一千行似乎有点太多了。但毕竟有很多鼠标的状态需要覆盖。
试用Switch语句
你认为未来的计划是要扩大这个Switch吗?没有什么了,只是要相信它。
数学是困难的
有时,使用外部帮助并不可耻。实际上存在的是--甚至是包。你敢猜它每周有多少次下载吗?它超过了15万次。
当辉煌的想法流淌时
有时,你只是觉得自己是个叛逆者。你必须按自己的方式做事。但我想我们可以同意,这种类型的代码不应该进入代码审查。
当你是个码农但你的激情是书法时
我尝试了不同类型的字体。但我不得不说,它从未走到这一步。如果这让你怀疑 "盗版软件是这样写的吗?" 你并不孤单。
最后的思考
我希望你在看这些例子时有个好心情。我当然也是如此。欢迎让我知道你最喜欢的是哪一张。或者如果你有一些可耻的照片要分享,不要害怕在评论中分享它。
我在浏览这些代码片断时感到很愉快。它让我想起了我早期的日子。在我的职业生涯中,我写了一些我并不自豪的代码片段。但幸运的是,没有人对它们进行截图。或者至少我希望如此。
版权声明:本文为CSDN博主「一口Linux」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
https://blog.csdn.net/daocaokafei/article/details/120733959
END
往期精彩Spring Boot 实现各种参数校验及实现原理,非常实用!
还在写大量 if 判断,试一试规则执行器,太香了!
使用MQ的时候,怎么确保消息100%不丢失?
海量数据下如何使用多线程的导出 Excel ?
MySQL最大建议行数2000w, 靠谱吗?
关注后端面试那些事,回复【2022面经】
获取最新大厂Java面经