在某些时候,我们写出了自己并不感到自豪的代码。这些代码让你怀疑,"我怎么会写出这样的东西?"其实,这没什么好羞愧的。
它发生在我身上,发生在你身上,但它也发生在其他开发者身上。我花了点时间,收集了我能找到的最糟糕的代码片断。
今天,我将把它们介绍给你们。
常规的布尔类型比较没有返回你要找的东西。你应该怎么做?答案很简单,你自己创建一个。
看着这幅图,我不禁要问。如果我们改变其中一个数字会发生什么?可能没有什么好事。
从这块代码的纯粹外观来看,我猜测它是一个学校项目。不用说,我对这位老师表示慰问。
今天,我们将看到isEven函数的各种实现。这是我们的第一个候选人。我想说的是,我们已经有了一个好的开始。你觉得怎么样?
这个想法在我们的开发者伙伴的脑海中闪过。他没有犹豫一秒钟。并立即实施了它。
虽然听起来很疯狂,但你可以使用表情符号作为变量名称。但你应该以这种方式使用它们吗?请看下面的代码,自己决定。
如果你有一个同事反复使用相同的提交信息。她可能是这样做的。
未来是不可预测的。它可以在一夜之间改变。为了防止这种情况发生,最好还是多加小心。
冗长的变量名并无不妥。只要它们有助于提高代码的可读性。但有时,我们必须问自己 "多长才算长?”
这里没有什么要补充的。我认为这条注释不言自明。
类型安全的感觉是很好的。那么如何更好地确保你不会出现任何类型错误呢?这些家伙,他们想出了这个办法。
真正要说的是什么。只要确保参数的总和始终是7。而且这个函数不会失败。
多大程度的悲观才算过分悲观?我想说这个人真的很接近。
我们必须为使用单元测试的做法点赞。但我不禁要问。如果测试是生成随机数字,会发生什么?
我们都在某些时候写过复杂的开关语句。然而,一千行似乎有点太多了。但毕竟有很多鼠标的状态需要覆盖。
你认为未来的计划是要扩大这个Switch吗?没有什么了,只是要相信它。
有时,使用外部帮助并不可耻。实际上存在的是--甚至是包。你敢猜它每周有多少次下载吗?它超过了15万次。
有时,你只是觉得自己是个叛逆者。你必须按自己的方式做事。但我想我们可以同意,这种类型的代码不应该进入代码审查。
我尝试了不同类型的字体。但我不得不说,它从未走到这一步。如果这让你怀疑 "盗版软件是这样写的吗?" 你并不孤单。