2014-10-30 61 views

回答

2

有沒有明確的「技術」優勢的一種方式或其他。事實上,我能想到的唯一的「技術」問題是對源文件中字節數的影響。

  • 如果使用空格字符(ASCII SP)表示縮進,則2個空格的長度少於4個空格的2個字符。

  • 如果允許TAB字符最多爲4個空格使用,然後(在Windows上)一個TAB縮進,所以TAB字符導致更少的字符。但另一方面,TAB在許多其他操作系統上通常會縮進多達8個空格,所以如果您希望您的源代碼在所有平臺上都看起來不錯,則不應使用TAB進行縮進。

此外,「縮小」CSS,Javascript和網絡相關語言以使網站「更快」是常見做法。除此之外,這將刪除縮進,使這個微小的技術差異是沒有意義的。 (對於人類可讀的CSS版本,傳輸時間/存儲空間的節省太過瑣碎而不必擔心,今天的系統針對大衆市場進行了優化,其中存儲和移動千兆字節大小的文件(電影)是常見的地方。源代碼根本算不了什麼。)


至於「實用」的優勢,我想這可能是更容易查看,如果你不要浪費太多的屏幕房地產與編輯文件深刻的縮進。從這個角度來看,2個字符的縮進優於4或8個字符的縮進。

但是,這是一個「個人品味」問題。 (除非你使用它作爲問老闆又超寬顯示器上你的辦公桌:-)理由)


有沒有被廣泛接受的慣例?

一般沒有。

在某些語言,也許,但我想不出任何。即使在Java中,最常見的縮進約定是4個空格,但其他縮進是可以接受的。

1

我在書中使用了兩個空格,因爲否則你很快就會用完水平空間。我在IDE中使用了四個。

它曾經是一個物理標籤,八個空格,當然在過去,但代碼有太多的嵌套對於幾十年前。

2

來自:Linux內核編碼風格

片劑是8個字符,並因此縮進也是8個字符。有異端 運動試圖將縮進4(乃至2)個字符深,這幾乎相當於 以試圖確定PI的值是3。

理由:縮進背後的想法是明確定義控制塊開始和結束的位置。尤其是當你一直在尋找連續20小時的屏幕時,如果你有大的縮進,你會發現看到縮進是如何工作的更容易。

現在,有些人會聲稱具有8個字符的縮進會使代碼向右移動得太遠,並且使得在80個字符的終端屏幕上難以閱讀代碼 。 答案是,如果你需要3級以上的縮進,無論如何你都會搞砸 ,並且應該修復你的程序。 簡而言之,8字符縮進可以讓事情更容易閱讀,並且當嵌套功能太深時, 會帶來額外的好處。留意該警告