工欲善其事,必先利其器”,今天,叨一叨阿里巴巴的java代码规范。
from 泡泡堂
不知道大家有没有对代码美学有过研究...反正作为小菜鸟的泡泡来说,因为毕竟是和“设计+程序+产品”都打过交道的人,所以特别纠结这些小细节。而注重这些细节,可以提高我们的工作效率。比如,代码规则的设定。
足够优秀的代码,应当是清晰、可读、易分辨的。
其实有点类似于字典的使用,我们以前刚上小学,都喜欢看字典,那是因为我们不太识字。而随着网络流行语的推崇,相信真正实用的字典,也需要根据用户习惯增加适当的内容,否则就会被认为是一种落伍的出版物。代码规范,也应该一样。没写明白的,加上。
比如,我在这本代码规范中看到,if/for单行语句必须加大括号,因为如果是单行代码正常编译运行没有问题,但在视觉上会引起我们的错误判断。这一点我很赞同。但有一些地方,书中并没有写明原因,在百度的前几页也并没有查到理想的结果。
比如,第1条,P2页,代码中的命名均不能以下划线或$符号开始,也不能以下划线或$符号结束。为什么?不知道呀~没写呀~然后,泡泡又开始较劲了,书里没写就百度呗。
但是,即使是百度,第一条也只是说,没有为什么。
“什么叫没有为什么?”...
就我目前了解的,跟大家解释一下吧。下划线开头,可能和汇编有关(比如_asm),而$开头的变量,则极大可能会与与js相关。那么,如果是java后台语言,设置成下划线,或$开头,就会产生歧义——这一段代码,到底是js语言?还是汇编语言?还是java语言?...
泡泡的叨叨:阿里爸爸...泡泡很笨,死记硬背记不住。就像泡泡的脸盲+路痴一样,治不好。
建议您下次更新这本书,是不是可以把一些深入的细节化的地方,作为附录附在后面?作为读者,更需要了解的是底层,而不是在这里自己瞎猜字面意思...
如有不合适的地方,烦请见谅~我们只是想做到极致而已。