垃圾代码书写准则

时间:2022-12-13 08:14:47

int callbackDebounceRate = 700;

???? 使用母语写注释

如果你的母语是英语,那么请忽略这条准则。

Good ????????

// Закриваємо модальне віконечко при виникненні помилки.

toggleModal(false);

Bad ????????

// 隐藏错误弹窗

toggleModal(false);

PS:如果英语书写能力不是很强的话,建议还是用母语吧。毕竟说清楚总比说不清楚要强。

???? 声明变量的风格不统一

再次为风格不统一干杯。

Good ????????

String [] i1 = {“沉”, “默”, “王”, “二”};

String i2 [] = {“沉”, “默”, “王”, “三”};

Bad ????????

String [] wanger = {“沉”, “默”, “王”, “二”};

String wangsan [] = {“沉”, “默”, “王”, “三”};

???? 尽可能把代码写成一行

Good ????????

IntStream.range(1, 5).boxed().map(i -> { System.out.print("Happy Birthday "); if (i == 3) return “dear NAME”; else return “to You”; }).forEach(System.out::println);

Bad ????????

for (int i = 1; i < 5; i++) {

System.out.println("Happy Birthday " + (i == 3 ? “dear NAME” : “to you”));

}

???? 对错误信息不管不顾

无论什么时候发现错误,都没有必要让其他人知道。

Good ????????

try {

// 意料之外的情况。

} catch (error) {

// tss… ????

}

Bad ????????

try {

// 意料之外的情况。

} catch (error) {

// and/or

logError(error);

}

???? 使用大量的全局变量

全球化的原则。

Good ????????

int x = 5;

void multi() {

x = x * 2;

}

multi(); // 现在 x 是 10

Bad ????????

int x = 5;

int multi(int num) {

return num * 2;

}

x = multi(x); // 现在 x 是 10

???? 声明根本不会使用的变量

万一以后用了呢?以备不时之需。

Good ????????

int sum(int a, int b, int c) {

int timeout = 1300;

int result = a + b;

return a + b;

}

Bad ????????

int sum(int a, int b) {

return a + b;

}

???? 如果条件允许的话,从不指定类型。

Good ????????

// 享受便捷的快乐

List list = new ArrayList();

list.add(“沉默王二”);

list.add(18);

Bad ????????

List nameList = new ArrayList();

// 编译出错

nameList.add(18);

???? 没鸟用的代码

看起来更严谨,其实很多余。

Good ????????

Integer multi(Object num) {

if (!(num instanceof Integer)) {

return null;

} else if (num != null) {

return (Integer) num * 2;

}

return null;

}

Bad ????????

Integer multi(Object num) {

if (num instanceof Integer) {

return (Integer) num * 2;

}

return null;

垃圾代码书写准则

}

???? 大量的 if-else 嵌套

Good ????????

void someMethod(int a, int b, int c) {

if (a > 0) {

if (b > 0) {

if (c > 0) {

int result = a / b / c;

}

}

}

}

Bad ????????

void someMethod1(int a, int b, int c) {

if (a < 0 || b < 0 || c < 0) {

return;

}

int result = a / b / c;

}

???? 参差不齐地缩进

参差不齐乃幸福本源。

Good ????????

String [] wanger = {“沉”,

“默”, “王”, “二”};

String [] wangsan = {“沉”, “默”, “王”, “三”};

Arrays.asList(wanger).stream().

forEach(System.out::println);

Arrays.asList(wangsan).

stream().

forEach(System.out::println);

Bad ????????

String [] wanger = {“沉”, “默”, “王”, “二”};

String [] wangsan = {“沉”, “默”, “王”, “三”};

Arrays.asList(wanger)

.stream()

.forEach(System.out::println);

Arrays.asList(wangsan)

.stream()

.forEach(System.out::println);

???? 代码行数多的方法的比少的好

不要把代码逻辑分成可读的部分。

  • 一个类中的代码行数超过 10000 行。

  • 一个方法中的代码行数超过 1000 行。

  • 一个方法里既做减法处理又做加法处理,还做乘除的处理。

???? 不要测试你的代码

代码测试是测试工程师的事,关我屁事。

???? 避免代码风格统一

随心所欲地编写代码,特别是在一个团队中有多个开发人员的情况下,我崇尚“*”。

???? 不要写文档

从一开始就不要。

???? 不要删除废弃掉的代码

代码尽管已经废弃了,注释掉就行了,没必要删掉。

好了,小伙伴们还有需要补充的吗?

王", “三”};

Arrays.asList(wanger)

.stream()

.forEach(System.out::println);

Arrays.asList(wangsan)

.stream()

.forEach(System.out::println);

???? 代码行数多的方法的比少的好

不要把代码逻辑分成可读的部分。

  • 一个类中的代码行数超过 10000 行。

  • 一个方法中的代码行数超过 1000 行。

  • 一个方法里既做减法处理又做加法处理,还做乘除的处理。

???? 不要测试你的代码

代码测试是测试工程师的事,关我屁事。

???? 避免代码风格统一

随心所欲地编写代码,特别是在一个团队中有多个开发人员的情况下,我崇尚“*”。

???? 不要写文档

从一开始就不要。

???? 不要删除废弃掉的代码

代码尽管已经废弃了,注释掉就行了,没必要删掉。

好了,小伙伴们还有需要补充的吗?