代码之间为何要加空格?

据我观察,大多数人写代码喜欢在符号两侧加空格,并且还会嘲讽不加空格的人。这些支持者认为,加空格可让代码美观,加强代码的可读性。可是我不喜欢加空格,由于这么写对代码含义没有影响,浪费空间还很麻烦。我不认为多几个空格就能让本来凌乱的代码清晰起来,反而会让代码看起来很松散,影响阅读。java

以上,是我在知乎上看到的一个题目,感受蛮清新的,说得彷佛有理有据。就好像在说,据我观察,大多数人喜欢迟早刷牙,并且还会嘲笑不刷牙的人。这些支持者认为,刷牙有益于牙齿健康,空腔清新。但我不喜欢刷牙,由于我牙齿没坏,吃嘛嘛香。我不认为刷牙能保护牙齿健康,反而很浪费时间。git

对吧?我敢保证,这世界上有很多人不刷牙。说出来不怕你们笑话,我上初中以前真没刷过牙,就算是到如今,不少农村的孩子仍然没有刷牙的习惯。程序员

在我写代码的前一两年里,写代码也不习惯加空格,以为很麻烦,而且加不加空格,真的不影响代码的运行效果。github

// 加空格的写法
int a = 5;
int b = 3;
a = a + b;

// 不加空格的写法
int a=5;
int b=3;
a=a+b;

想知道为何后来我开始刷牙了呢?web

记得小学五年级的时候,牙齿疼过一次,真的是丧心病狂地疼,什么东西也吃不了。那时候,哪有看牙科的,彻底没有,至少在我那时候的成长环境下。面试

没办法,疼了大概有一周的时间,终于打听到邻村有一个老先生,他那有秘方,父母就带我去了。还真的见效,某一种秘制的液体滴在牙齿上,超级冰凉的那种,感受整个牙齿彻底失去了知觉。微信

有了这段痛苦的记忆,上初中后,看到不少同窗都刷牙,因而我也就买了牙刷。初中的条件仍是不好劲的,冬天,没有热水,洗脸的水和刷牙的水,都是前一天下午餐缸里接的水,放在课桌里。次日早上到了教室,同窗们就互帮互助,端着对方的饭缸倒水洗脸,脸没冻坏,牙没冻坏就是万幸啊。app

我在代码里加空格,和开始刷牙有类似的经历。less

Thisisavarofthings=yourfuckingtype+otherdamnedresult*me;
oh=mygodblessedsweetheart-thesaintangel/cursedcorpsehere;

哦,老天,上面这段代码里就彻底没有空格,看起来密密麻麻,可读性差到你感受本身的双眼受到了侮辱。学习

当符号两侧的单词很简单的时候,简单到只有 a 和 b 的时候,的确,不加空格好像看起来更紧凑一些。但考虑到实际的编码中,命名要有意义,长度都不会过短,这时候,若是没有空格的辅助,代码就真的不堪入目了。

Thisisavarofthings = yourfuckingtype + otherdamnedresult * me;
oh = mygodblessedsweetheart - thesaintangel / cursedcorpsehere;

OK,如今加了空格,是否是观感上就彻底不同了。单词与单词之间,很清楚,很协调,不拖泥带水。

通常的 IDE 都有自动格式化代码的快捷键,写完代码来那么一下,立马就会把该有的空格给加上。我如今已经彻底习惯手敲空格了,感受本身很优雅,甚至有点大师范的感受,毕竟程序员仍是要有点追求的,对吧?

说到这,不得不替古人感慨一下,因为纸张稀缺,因此大师们写出来的文章都是没有标点符号的,要是没点文化水平,密密麻麻一团的字挤在一块儿,真不必定能读的懂,何况汉语是这么博大精深。

咱们算是幸运的,读到的文言文都通过了加工,编辑们帮咱们加了标点符号,因此看起来不至于那么吃力。但我就特别讨厌一些题目,让加标点符号断句的那些,很无聊。

因此,别任性,该加空格就加空格,你写的代码可不仅是给你一我的看的,负责任点。

换句话说,我也能够写文章不换行,对吧?写一行两行文字真不必换行。但段落多了,还不换行,我保证你看不下去。

不过,须要注意一点的是,我看有些视频课里,有些讲课人习惯什么地方都加空格,我也是有点受不了的,好比说方法名和小括号之间——public void print (),这就有点不合时宜了。

按照规约来讲,方法名和小括号之间是不须要空格的,由于没有空格看起来更天然,更像一个方法,而不是割裂的关键字和小括号。

写代码不是钻牛角尖,就像有些人喜欢在 if 语句里使用 == false 同样——if (isFlase == false) {},他以为这样的代码更具备可读性,这不是出来搞笑的吗?

最次,你应该写成下面这样子:

if (isTrue) {

else {

}

这都比在 if 条件中使用 == false 来得让人舒服。

作程序员嘛,总得有个程序员的样子,想优雅点的话,把非“!”用上——if (!isFlase),搞那些无病呻吟的代码,真的很掉档次。

无规矩不成方圆,你若是不想遵照代码规约的话,不想团队协做的话,请随意处置你的代码,谁也拿你没办法。逃逃逃)

若是以为文章对你有点帮助,请微信搜索「 沉默王二 」第一时间阅读。

本文已收录 GitHub,传送门~ ,里面更有大厂面试完整考点,欢迎 Star。

我是沉默王二,一枚有颜值却靠才华苟且的程序员。关注便可提高学习效率,别忘了三连啊,点赞、收藏、留言,我不挑,嘻嘻

相关文章
相关标签/搜索