制表符还是空格? 显然是空格,但多少个?

如果您对代码缩进充满热情,您并不孤单。
247 位读者喜欢这个。
A bunch of question marks

Opensource.com

根据您询问的对象,当涉及到编码风格时,这要么是最愚蠢的问题,要么是最重要的问题:制表符还是空格?

当我们去年夏天向您,我们的读者,提出 上个夏天 这个问题时,空格胜出。 也就是说,这是一个细致入微的问题,其中编程语言、编辑器和项目风格都应该发挥作用。

无论您在空格与制表符的辩论中站在哪一边,都有一个相关的问题:如果您使用空格,您使用多少个?如果您使用制表符,您将多少个空格设置为等同于一级制表符深度?

有一种观点是尽可能少用,特别是当您编写的代码包含特别冗长的命名约定,迅速将每行总字符数拖向三位数时。或者,也许您的代码中有特别深的缩进级别,并且出于某种原因,没有将较长的代码块分解为子程序。

使用更多空格的论点也是可读性,但在另一方面:如果您不使用足够的空格,有时很难轻易判断一行代码的缩进深度,特别是对于较小的字体大小。

所以我们问您,亲爱的读者,在您选择的编辑器中,多少个空格等于一级缩进?

标签
User profile image.
Opensource.com 发布关于创建、采用和分享开源解决方案的故事。在 Twitter 上关注我们 @opensourceway。

7 条评论

首先,2018 年还在用空格? 为什么要让自己不必要地承受数十万个额外的字符?

我知道,对吧? 我认为制表符更好; 您可以将编辑器配置为匹配您希望每个制表符代表的空格数,这一事实使它们更好。 此外,我可以只按一次制表符键就得到四个空格...... 我真的不明白这场无休止的制表符与空格之战的意义何在,因为制表符已经一次又一次地证明了它们的优越性。 甚至 Go 语言也默认使用制表符!

回复 作者:D (未验证)

制表符还是空格? 显然是制表符,但多少个? 使用制表符的简单答案:1! 为什么要使用多个空格,制表符是很久以前发明的...

我看到这篇文章的作者隐藏在 opensource.com 的名下…… 我认为作者害怕有人会打开段落标记检查他的 Writer,并会看到用于格式化的空格 :)

制表符。 程序员可以在他们的编辑器中设置制表符位,以设置他们喜欢看到的空格数。 代码不会因为不同的程序员使用不同数量的空格而出现奇怪的缩进。 并且缩进级别很清晰。

我会毫不犹豫地在 HTML、Javascript 和 CSS 中同时使用制表符和空格 - 因为谁在乎呢,空格只是一种视觉工具,对吧? 而且我并没有真正编写任何要在不同编辑器之间广泛共享的东西。

对于 Python,只使用空格。

空格。 当与不同的人协作时,每个人的编辑器配置都不同。 当使用制表符时,文件对于不同的用户将显示不同。 当制表符和空格混合使用时,情况更糟 - 列不对齐,使得任何人在不将其编辑器配置为与原始作者相同的制表符宽度的情况下都难以阅读。

至于节省字节,我不敢相信有人会在乎,考虑到文件的大小和存储介质的大小。 至于方便性,我仍然可以键入 TAB 键来插入正确数量的空格(或重新缩进该行)。 Emacs 几十年来一直这样做,我假设任何像样的程序员编辑器也可以做到这一点。

空格。
Makefile 除外,其中需要制表符。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 许可。
© . All rights reserved.