代码可读性的最佳缩进大小

24 投票
13 回答
36681 浏览
提问于 2025-04-15 11:20

个人喜好不谈,代码的缩进大小(比如2个空格、3个空格或者8个空格)有没有一个最佳的选择,能让代码更容易阅读呢?我参与过的不同项目中,大家的标准差别很大。我自己觉得2个空格的缩进看起来很费劲,但像谷歌这样的公司却把它当作标准。

有没有人能提供一些文档、研究或者合理的论据,来说明最佳的缩进大小是什么?

如果要具体一点,我主要使用Python。这个问题的目的是为了给我所在的团队选一个统一的标准。

13 个回答

14
2 space 4 busy coder
3 space for heavy if statement using script kiddies 
4 space for those who make real money pressing space 4 times
8 space for the man in ties and suit who doesn't need to code

当然可以!请把你想要翻译的内容发给我,我会帮你把它变得更简单易懂。

14

我喜欢用8个空格(我知道,这听起来很奇怪)。这样一来,代码块的开始和结束就特别明显。

关于你的问题,确实需要进行正式的可用性研究。不过我们可以看看一些极端的情况:

0个空格

function test(){
var x = 1;
for (i=0; i<=5; i++){
doSomething();
}
}

完全没有缩进显然是不好的。这样你根本看不出代码的开始和结束在哪里。

19个空格

function test(){
                   var x = 1;
                   for (i=0; i<=5; i++){
                                      doSomething();
                   }
}

缩进太多也显然不好,因为你无法在视觉上将代码和它的父函数或循环等联系起来。你的视野范围有限,眼睛来回移动太多会让阅读变得困难。

8个空格

function test(){
        var x = 1;
        for (i=0; i<=5; i++){
                doSomething();
        }
}

我选择8个空格是因为“function”这个词正好是8个字符。不过,这样的缩进在可读性上真的很有帮助。所有的代码都在我的视野范围内,如果我快速浏览的话,根本不会错过新代码块的开始。

45

如果你是个Python爱好者,那么你应该知道,代码里要用四个空格来缩进,而不是用硬制表符(Tab键)。

撰写回答