前些年,一次面试经历,面试官问到,你这个while(1)是什么意思啊。
当时感觉…我可能面试了个假工程师,现在想起来查了一下,可能当时的面试官只会java吧。
在java里,1只能是数值型,while(1)编译是不通过的。
这种用法,我目前知道的,就java用不了,刚刚在手边测试了python是通过的。
后来就总想,整理一下,这些细节的,可能需要了解并注意一下的点。
前两天,在宿舍,听室友说起,为什么公司要求if语句后面必须加括号,即使执行语句只有一句
//如:
if ( a > b ) max = a;
//也要写成
if ( a > b ) {
max = a;
}
很明显,第二种写法,可读性更强,清晰明了,直观。
还有另一个原因,运行的时候,不加括号会比加括号更慢…虽然只慢一点点。
如果这种写法多了,也会占用一定资源吧。
总之进入公司后,代码也需要规范,何不从现在做起呢。
所以说,整理一下良好的代码风格是很有必要的!
行长度:每一行代码字符数不超过 80
老实说,不太明白编程规范里的这个规定,然后在pycharm里尝试了一下,感觉上就是,没有特别长,看起来挺舒服的,可读性不错吧…很玄学的感觉…
函数声明:返回值类型和函数名放在同一行,参数优先同一行,放不下就换行,但需注意对齐。
Return Type FunctionName(Type Param1,Type Param2){
//TO DO:
}
Return Type Function_Has_A_So_Long_Name(Type Param1,
Type Param2,
Type Param3){
//TO DO:
}
可读性强
如果是函数调用,参数多或者参数长,也可以按照如上格式写。
一定要对齐!!!
不然看起来超麻烦…可读性这点还是需要点“强迫症”精神的。
空格与制表符
我的习惯时,函数体缩进采用制表符,这样格式比较整齐。
如上的对齐,采用空格,制表符不好对齐。
条件、循环语句
一定要加括号!!!
不管函数体是不是只有一句,都要加括号!!!
条件句太长的话,就换行对齐!!!
if ( AAA.equals(BBB) &&
BBB.equals(CCC) &&
CCC.equals(ABC) ) {
// TO DO:
}
逻辑操作符要放在行尾,条件句开头对齐。
如上,if后空格,if后的()前后加空格
添加空格、空行,让代码更清晰
int A = 1;
定义变量,等号前后加空格
void dosth();
void main () {
dosth();
}
void dosth() {
print();
}
方法前后要有空行分割