牛仔程序员手册

本指南将教您如何编写草率、不专业的代码,忽略广泛接受的标准,使您的代码库变得难以理解的混乱!遵循这些提示,未来的你将会感谢你,因为他们试图在你的杰作的基础上进行构建或修复,而你会经历几天的沮丧和头痛。

1.避免面向对象编程
所有那些类、封装、继承之类的东西--完全没有必要!只需编写 1000 多行的巨型脚本,将所有东西混合在一起即可。函数?在我们要去的地方,我们不需要什么臭函数!谁有时间在不同的文件和类之间进行上下文切换?真正的程序员可以同时把所有东西都记在脑子里。所以,把那些 OOP 的废话都扔掉吧。文件越大越好!

2.随处复制和粘贴
需要在多个地方使用相同的代码?只需复制并粘贴即可!重构是为失败者准备的。如果你有一个算法或逻辑需要重复使用,只需在需要的地方复制这个坏小子。当需求发生变化时,谁会在意你是否需要在 15 个不同的地方更新它呢?不是你--你只需黑掉它,然后继续做下一件事!复制是你的朋友!

3.随处可见的全局和副作用
变量、函数、状态--只要把它们扔进全局命名空间就可以了!当你可以在代码的任何地方直接改变任何你想要的东西时,谁还需要封装呢?既然如此,函数就应该有各种副作用。但不要记录下来,让你的队友猜猜函数调用的作用!

4.嵌套一切
嵌套循环、嵌套 if、嵌套函数--尽情嵌套吧!谁会在意代码是否缩进了 50 层?只需在某处注释一句 "这里有龙 "就可以了。意大利面代码有它自己的美。

5.神奇数字和硬编码
在你的代码中加入魔法数字和硬编码字符串--它们确实能增加人性化的感觉。谁需要常量或配置文件?对 URL、API 密钥、资源限制进行硬编码--尽情发挥吧!让发布工程师时刻保持警惕!

6.意大利面依赖管理
可以随意从任何地方导入任何内容。混合和匹配相对导入、循环依赖,随心所欲!从 ../../utils导入助手、常量、数据库--美极了!只要能运行,谁会在乎它来自哪里......直到它突然无缘无故地崩溃。

7.随心所欲地编写每一行代码
不要把时间浪费在前期规划或设计上。只管开始黑!意识流编码才是王道。只要写下你脑海中闪现的每一行和每一个想法。谁会在乎架构呢--你要写的是 CODE!

8.文档被高估
真正的程序员不会注释代码或编写文档。如果没人能理解你花了好几天才完成的出色算法,那是他们的问题!你是一位艺术家,你的杰作应该为自己代言。

9.测试是一根拐杖
不要浪费时间为你的代码编写测试。如果它能在你的机器上运行,就直接发布!谁会在乎未经测试的代码是否会导致构建失败或在生产中崩溃呢?你是编码牛仔--释放未经测试的美丽野兽吧!

10.尽早提交,经常提交
分支、拉取请求、代码审查--没人有时间做这些!只要尽可能多地直接提交到主分支即可。别担心错别字或半成品,直接提交到仓库,然后继续前进。Git 历史记录的清洁度被高估了!

11.手动部署到生产环境
建立持续集成和交付?没门!只要你想,随时都可以点击 Click click 手动部署到生产环境。周日凌晨 3 点?正是时候!每当部署时,就用令人兴奋的新错误和回归唤醒你的团队。

12.不要处理错误
错误处理很无聊。让你的代码崩溃和燃烧吧--这会让你更兴奋!不要用 try/catch 块来封装有风险的部分--让异常涌向用户。最坏的情况是什么?

13.傻瓜才需要安全
谁需要验证或授权?开放所有应用程序接口,登录可有可无。用纯文本存储密码,最好是在源代码中硬编码!SQL 注入漏洞?听起来像是个功能!

14.害怕维护阶段
编码最重要的部分是下一个功能。只需黑进一些勉强能用的东西,然后继续下一件事。谁会在乎你那无法维护的烂摊子会不会给下一个开发者带来噩梦?这已经不是你的问题了!

总结
遵循这些顶级技巧,你很快就能编写出光彩夺目的不可维护代码!当你不可避免地离职时,你的团队在拼命重写你留下的那堆意大利面代码时,一定会深深地记住你。驰骋在夕阳下吧,你这个聪明美丽的代码牛仔!快乐黑客