2017-09-20 31 views
0

我以爲我明白了縮進的規則,但幾乎我在S/O上詢問的每個問題都以「正確縮進您的代碼」爲結尾。只是想徹底澄清這一點。這是我正在從事的一個項目的一個片段。什麼是正確縮進,什麼不是?這個縮進是否正確?

def display 
     print " 1  2  3  4  5  6  7" 
     @board.each do |i| 
      print "\n" 
      @draw = "+-----+-----+-----+-----+-----+-----+-----+" 
      puts @draw 
      i.each do |n| 
       print "| #{n} " 
      end 
      print "|" 
     end 
     print "\n" 
     print @draw 
    end 
+0

我認爲它歸結爲個人喜好的所有規則。但是大多數人(包括我)的一般個人喜好似乎是:使用Tab Width:2的空格縮進,至少對於Ruby來說。 儘管應用中沒有真正的問題,但使用2個空格更具可讀性,並且可能會避免與其他人一起工作時發生衝突。還可以幫助您避免使用舊款開發者的外觀。 – bis

+0

因此,除了我用於縮進的完整選項卡之外,代碼是否縮進了正確的區域?我一直假設你在任何有「do,end」後縮進 –

+1

這裏有一個你可以通過https://github.com/bbatsov/ruby-style-guide查看的樣式指南,但是總的來說它很少一個2個空格與4個空格或硬標籤與軟標籤的問題,以至於當某些行不應該縮進時其他行縮進,而另一些行在它們應該時不縮進,並且最終看起來像是'do'的代碼而沒有一個'end'或者'end'似乎沒有排隊或者關閉任何明顯的東西,然後就很難說出你在什麼範圍以及一大堆問題可能會在未被注意的情況下蠕變 –

回答