2011-01-26 153 views
8

Java code conventions说:为什么在Java中使用4个空格作为缩进的单位?

4个空格作为缩进的单位。

但它没有任何解释为什么空间是首选。如果我只键入一次空格而不是按一次tab键,那么我不得不按三次按键。这意味着更多的工作,因为编码人员会在一天内编写大量的代码。那么这个约定是从哪里来的呢,还有什么合理的理由可以做更多的工作吗?

+0

不知道,但在Python中它是一样的。也许有一个工艺问题 – 2011-01-26 08:09:06

+2

在任何合理的代码编辑器中,缩进通常是自动完成的,所以除了“Enter”之外根本不需要按任何东西。这是我第一次听到大约4个空格,但总是只用到2个。 – 2011-01-26 08:10:45

回答

6

您可以将您的操作系统设置更改为使用tab作为4个空格。 更好的做法是为您的IDE做,而不是。您可能不喜欢在操作系统级别更改设置的想法。

+8

我同意:您不应该空格键4次,但选项卡键一次 - 选项卡将被转换为4个空格编辑。 – Merijn 2011-01-26 08:07:54

2

人们可以整天争论它,但最终它是一个任意的决定。拥有一个标准比让这种争论继续下去直到时代的结束要好。

而“更多打字”并不是真正有效的论据,因为您可以轻松设置任何理智的代码编辑工具,以便在按Tab时插入4个空格。

1

我认为这主要是因为它没有固定在制表位中有多少空间。这使代码更具可移植性,因为不仅仅因为选项卡以不同方式显示,所以不会显示错误。

与Java的事情是,你可能会最终使用IDE,无论如何,这使得它三次击中空格键过时。

20

根据我发现的一些研究,6个空格掩盖了对代码的阅读并使其更难阅读。类似的情况是0空格,

4个空格据说对于阅读清晰度和理解程序的逻辑层次一目了然是最佳的。

的布局和风格史蒂夫·麦康奈尔的代码完成第二版第二章:

主题得分高出20%至30%的修真测试 当程序有两到四个空格缩进方案 比他们在节目完全没有缩进的时候就做了这个。同样的研究发现,强调节目的逻辑结构既不重要也不重要。理解得分最低的是 ,这些程序根本没有缩进。第二低的是使用六空间缩进的程序实现的 。该研究得出的结论是,两到四空间压痕是最佳的。有趣的是, 实验中的许多受试者认为六空间压痕比较小的压痕易于使用,尽管他们的评分较低。这可能是因为六个 空间缩进看起来令人愉快。但是不管它看起来有多漂亮,六空间的缩进结果是不太可读。这是一个碰撞的例子,它是美学吸引力和可读性的补充。

相关问题