点击上方“Java精选”,选择“设为星标”

别问别人为什么,多问自己凭什么!

下方有惊喜留言必回,有问必答!

每一天进步一点点,是成功的开始...

19个人们真正编写的垃圾代码片段,其中一个可能是你写的。

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

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

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

重新造轮子出错了

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

魔法数字

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

至少它被分成了几条线

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

魔鬼也是一种功能

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

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

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

唤醒内在的孩子

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

到底谁在读提交t信息

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

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

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

购买超宽屏显示器的理由

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

天才之举

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

排版是最好的

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

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

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

确保它是真正的Bool

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

测试驱动的最佳开发方式

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

你敢于扩展吗?

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

试用Switch语句

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

数学是困难的

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

当辉煌的想法流淌时

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

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

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

最后的思考

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

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

版权声明:本文为CSDN博主「一口Linux」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

https://blog.csdn.net/daocaokafei/article/details/120733959

公众号“Java精选”所发表内容注明来源的,版权归原出处所有(无法查证版权的或者未注明出处的均来自网络,系转载,转载的目的在于传递更多信息,版权属于原作者。如有侵权,请联系,笔者会第一时间删除处理!

------ THE END ------

精品资料,超赞福利!

>Java精选面试题<
3000+ 道 BAT 大厂面试题在线刷,最新、最全 Java 面试题!

☆ Java进阶学习资料
 Java自学、进阶路线图免费领

期往精选  点击标题可跳转

扛住 100 亿次请求—如何做一个“有把握”的春晚红包系统?

大厂程序员裸辞,全职接单一个月的感触!

Mysql 索引:图文并茂,深入探究索引的原理和使用!

字节实习生删除 GB 以下所有模型!网友:“立大功”了!

Linus:“我删除了 Linux,因为它就是个垃圾!”

真不是我吹,这款 IDEA 插件你还真没用过!

IT 界惊现文豪!华为领导及阿里 P10 遭吐槽!

卧槽!用代码实现 3D 冰墩墩,太浪漫了吧!

 技术交流群!

最近有很多人问,有没有读者交流群!想知道如何加入?方式很简单,兴趣相投的朋友,只需要点击下方卡片,回复“加群”,即可无套路入交流群!

文章有帮助的话,在看,转发吧!

你见过最垃圾的代码长什么样?19 种垃圾代码片段!相关推荐

  1. 你见过最垃圾的代码长什么样?(来长长见识)

    [文章来源]https://sourl.cn/SJHcWS 19个人们真正编写的垃圾代码片段,其中一个可能是你写的. 在某些时候,它发生在我们所有人身上.你产生了你并不感到自豪的代码.这些代码让你怀疑 ...

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

  3. java 2分代复制垃圾回收_Java对象的后事处理——垃圾回收(二)

    1 先谈Finalize() finalize()能做的所有工作,使用try-finally或者其他方式都可以做得更好.更及时,所以笔者建议大家完全可以忘掉Java语言中有这个方法的存在. --< ...

  4. java8堆内存模型_「GC系列」JVM堆内存分代模型及常见的垃圾回收器

    1. 内存分代模型 为什么要说JVM的内存分代模型呢,因为内存分代和垃圾回收器的运行是有关系的. 现在大部分用到的垃圾回收器在逻辑上是分代的,除了G1之外的其他垃圾回收器在逻辑上和物理上都是分代的. ...

  5. 程序员的好代码长什么模样?

    一天晚上,我和老婆聊天,说部门要我写个"大咖谈软件"的文章,老婆斜了我一眼,淡淡地说:"Linus大神21岁就写出了Linux内核的雏形,缔造了一个自由主义的开源世界:张 ...

  6. 内存代管理器TenuredGeneration对垃圾对象的回收

    内存代管理器TenuredGeneration作为基于内存分代管理的内存堆管理器GenCollectedHeap默认的旧生代管理器,它对垃圾对象的回收算法要比年青代Gc要复杂的多,但其主体思路就是:标 ...

  7. jvm学习第十、十一天、十二天—垃圾回收器1、垃圾回收的相关概述2、 垃圾回收相关算法3、 垃圾回收器

    标题:jvm学习第十.十一天.十二天-垃圾回收器 学习内容: 1.垃圾回收的相关概述 2. 垃圾回收相关算法 3. 垃圾回收器 内容详情: 1.垃圾回收的相关概述 什么是垃圾( Garbage)? 垃 ...

  8. jvm垃圾回收是什么时候触发的? 垃圾回收算法? 都有哪些垃圾回收器

    1.1.那究竟GC为我们做了什么操作呢? 1 ,哪些内存需要回收? 2 ,什么时候回收? 3 ,如何回收? 这时候有人就会疑惑了,既然GC 已经为我们解决了这个矛盾,我们还需要学习GC 么?当然当然是 ...

  9. Java垃圾回收(GC)、找垃圾的方式、GC Root、GC停顿、引用、垃圾收集算法、收集器、GC日志、安全点、安全区域

    1.垃圾回收 1.1概念 在Java语言中,垃圾回收(Garbage Collection,GC)是一个非常重要的概念. 它的主要作用是回收程序中不再被使用的内存,Java提供的GC功能可以自动监测对 ...

  10. bat判断文件是否存在_BAT面试必问题系列:JVM判断对象是否已死和四种垃圾回收算法总结...

    JVM系列: 面试题一:判断对象是否已死 判断对象是否已死就是找出哪些对象是已经死掉的,以后不会再用到的,就像地上有废纸.饮料瓶和百元大钞,扫地前要先判断出地上废纸和饮料瓶是垃圾,百元大钞不是垃圾.判 ...

最新文章

  1. HDU2853(最大权完美匹配)
  2. ARP/代理ARP的总结
  3. boost::graph模块实现双连通分量算法的测试程序
  4. Castle实践9-在Castle IOC容器中使用AspectSharp(全面剖析AspectSharp Facility)
  5. window 任务管理器
  6. AI没有偏见?它们从人类的语言中学会了性别和种族歧视
  7. Codeforces Round #498 (Div. 3) F. Xor-Paths
  8. Java 答疑:编译器和解释器有何区别?Java 语言属于编译型编程语言还是解释型编程语言?
  9. numpy-array
  10. eclipse设置工作空间编码为默认utf-8
  11. Git tag常用命令分享
  12. python 正则表达式匹配数字或者小数点_Python 正则表达式 匹配小数
  13. xshell xftp 工具免费版本免费下载
  14. SECS I II HSMS 和GEM初步资料总结
  15. 在屏幕上绘制圆形函数
  16. 读书笔记-《墨菲定律》
  17. 【微信开发相关】Java后端微信授权登录,获取微信openid以及用户信息
  18. WIN10安装CUDA10 cuDNN
  19. ggplot2---绘制地图
  20. html a3纸大小,A3和A4的纸大小都是多大的?

热门文章

  1. CodeProject是个好地方
  2. 图书馆管理系统前景与范围文档
  3. Ubuntu之最好用程序员计算器:qalculate
  4. 关于图书馆占座问题的调查
  5. 计算机设备硬件维护税收编码,自动化设备的税收编码是多少
  6. layer数据加载中,loading的显示
  7. 软件工程需求分析方法
  8. 【正点原子MP157连载】 第二十二章 ADC实验-摘自【正点原子】STM32MP1 M4裸机CubeIDE开发指南
  9. Linux之top命令
  10. windows下python3安装pip方法详解