一个关于非常非常糟糕的编程的傻瓜指南






4.89/5 (124投票s)
对糟糕的编程技术进行的讽刺性审视
引言
我注意到有些人坚持写出清晰、易于理解且文档完善的优秀代码。所以,我认为是时候将真正糟糕的编程的主要技巧汇集在一起,写成一份参考文档了。记住,写出真正糟糕的软件最重要的两件事是:尽可能多地引入细微的错误,并使代码变得非常混乱,以便难以追踪这些狡猾的小错误。这样,你就可以最大限度地惹恼用户和程序员。
如果你遵循这些简单的规则,我保证你离不开用户和其他程序员的“惦记”。
1. 关闭所有编译器警告
如果你想写出真正糟糕的代码,这是一个很好的开始。毕竟,你不想让那个烦人的编译器整天唠叨你。所有真正的程序员都会完全关闭警告。
2. 变量
初学者应该确保所有变量都是全局变量。将它们放在一起更容易。当你变得更高级时,添加与全局变量同名的局部变量,这将使你能够轻松地创建细微的错误。
3. 函数
尽可能避免使用函数。编写一个单一的、巨大的长段代码比经历将代码分解成单独的函数并向它们传递参数的繁琐过程要容易得多。
4. 复制粘贴是你的朋友
不惜一切代价避免使用循环,重复复制粘贴一段代码可能需要更长的时间,但当你考虑到任何人检查这段代码的每一次重复以查找细微差异时所花费的时间时,这是非常值得的。
5. 变量名(针对初学者)
你可以通过变量名获得很多乐趣,尝试使用你能想到的最无意义的名称,Fred 是我个人的最爱。但一定要包含一些半有意义的名称,让其他程序员猜测。
6. 高级变量名技巧
理想情况下,尝试为尽可能多的完全不同的变量想出非常相似的名称。另一个好主意是创建两个同名但一个以“1”结尾,另一个以“l”结尾的变量,这些变量很容易一眼混淆,应该让其他程序员真正地去猜测。例如:Slopel 和 Slope1。然而,你可以在偶尔使用标签来表示与人们会假设的完全相反的含义时获得最佳结果,一个经典的例子是使用标签“Horizontal”来表示“Vertical”,反之亦然,这将真正取悦你的代码的任何读者,让他们在试图解开它时感到数小时的乐趣和快乐。
7. 初始化
通过允许所有变量从上一个应用程序的内存中的任何值开始来玩程序员宾果游戏。太好玩了!
8. 边界检查
允许用户输入他们想要的任何值,如果他们输入一个愚蠢的值,程序可能会崩溃。所以呢?他们期望什么?
9. 注释
初学者最好始终避免注释,它们会浪费宝贵的空间,而且需要很长时间才能打出来。当你变得更高级时,你可以开始添加完全无用的注释,因为它们陈述了显而易见的内容,例如
i++; // increment i
然而,最先进的注释将尽可能地隐晦,例如
i++; //check inside the chicken string
10. 布局
要使你的软件布局真正糟糕,需要真正的奉献精神。最重要的是,永远不要保持一致性。无论你选择哪种布局哲学,都要确保定期更改它。高级程序员应该记住,在更改为完全不同的东西之前,使用相同的布局足够长的时间,以便任何其他程序员习惯它。
11. 匈牙利命名法
这是完全可选的,但为了获得最佳效果,请使用一些匈牙利命名法,从而惹恼每个人(喜欢它的人和不喜欢它的人),当然,还要包括一些不正确的使用,以使事情更有趣。
12. 最后,永远不要测试
不要费心测试你的代码,只需等待人们抱怨,这样你就会发现哪些是发生频率最高的错误!太棒了!
我试图涵盖真正糟糕编程的大部分方面,但我相信你们中的许多人可以想到更多。如果你在一段时间后开始养成良好的习惯,不要灰心,要重新回到那些糟糕的方式并不需要太多的努力。
免责声明
我绝不是暗示我从未写过糟糕的代码,也没有暗示 CodeProject 上的其他人写过。只是开个玩笑!