共计 2881 个字符,预计需要花费 8 分钟才能阅读完成。
???? 以一种容易造成代码混同的形式命名变量
命名越短,就须要越多的工夫去思考代码逻辑等问题。
Good ????????
int a = 42;
复制代码
Bad ????????
int age = 42;
复制代码
???? 变量 / 办法命名格调不对立
为格调不对立干杯。
Good ????????
int wWidth = 640;
int w_height = 480;
复制代码
Bad ????????
int windowWidth = 640;
int windowHeight = 480;
复制代码
???? 不写正文
反正没人能读懂你的代码。
Good ????????
int cdr = 700;
复制代码
Bad ????????
正文应该蕴含一些“为什么”,而不是一些“是什么”。如果代码连是“什么”都表白不分明,那代码也太烂了。
// 700ms 的数量是从 UX A/B 测试后果中失去的一个经验值。// @查看: < 具体解释 700 的一个链接 >
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<String> nameList = new ArrayList<String>();
// 编译出错
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 行。
- 一个办法里既做减法解决又做加法解决,还做乘除的解决。
???? 不要测试你的代码
代码测试是测试工程师的事,关我屁事。
???? 防止代码格调对立
得心应手地编写代码,特地是在一个团队中有多个开发人员的状况下,我崇尚“自在”。
???? 不要写文档
从一开始就不要。
???? 不要删除废除掉的代码
代码只管曾经废除了,正文掉就行了,没必要删掉。
参考:《2020 最新 Java 根底精讲视频教程和学习路线!》
链接:https://juejin.cn/post/692002…