屎山代码工程学

屎山代码工程学

本项目旨在编写常人难以维护的屎山代码,按我以往经验,如果想让后续接手人员面对你的代码难以维护,首先需要你确定好后续接手项目人的经验水平,从而采取不同的shit策略

菜鸟篇

如果你负责的项目/模块比较简单,后续可能是菜鸟程序员来接手该部分,此时最好的策略反而是写出高质量 的代码,但这个高质量包括但不限于

1.设计模式的混用,我建议核心业务逻辑套至少套四个及以上的设计模式,就算本来不需要,也可以将装饰器模式,代理模式等模式强行套用上去,但切记,不可使用暴露使用的设计模式信息,比如装饰器模式禁止出现decorate,decorator等相关的类命名,如果不知道怎么命名,一律以handler结尾

3.大量使用框架提供的扩展接口,如spring相关

2.不要加任何注释

高手篇

对待高手,一些比如什么混乱命名,多行写一行,诸如此类,在强大的idea面前简直不堪一击,批量重命名,格式化,分分钟让你的努力付之东流

我很赞同一句话叫菜逼克高手,虽然不是完全克制,但在很多方面可以借鉴,菜逼的写法有如下可借鉴

1.不写注释,不写文档,如果代码审查较为严格,必须写的话,那就"撒谎",但这个"撒谎"也是有技巧的,你不能睁眼说瞎话,当然,偶尔的"笔误"还是可以原谅的,比如工期太紧,逗号都忘写了,其余的话你应该做的是混淆避重就轻,混淆是指根据业务使用概念相近的字词任意替换,比如气温,热度,暖度,温暖程度混用,避重就轻是指对简单的代码大量注释,对复杂的逻辑惜字如金甚至闭口不谈

2.不要抽取工具类,哪里使用直接copy,但不要完全copy,因为完全copy会被idea检测出重复代码,所以最好改变一些参数

相关推荐
聪明的笨猪猪6 分钟前
Java Redis “持久化”面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试
聪明的笨猪猪34 分钟前
Java Redis “核心基础”面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试
奋斗的小monkey3 小时前
Spring Boot 3.x核心特性与性能优化实战
java·spring boot·微服务·性能优化·响应式编程
程序猿DD3 小时前
将 GPU 级性能带到企业级 Java:CUDA 集成实用指南
java·架构
一成码农4 小时前
JavaSE面向对象(上)
java
qq_574656254 小时前
java-代码随想录第66天|Floyd 算法、A * 算法精讲 (A star算法)
java·算法·leetcode·图论
我是好小孩4 小时前
【Android】六大设计原则
android·java·运维·服务器·设计模式
小霞在敲代码4 小时前
HashMap - 底层原理
java·hashmap
Elsa️7465 小时前
个人项目开发(1):使用Spring Secruity实现用户登录
java·后端·spring