圣戰(zhàn)有很多種她紫,諸如 Vim vs Emacs,Sublime vs Atom屿储,OSX vs Windows贿讹,當(dāng)然也有 Tab vs Space。
很久以前我聽信了一個建議够掠,“兩個空格的縮進非常棒民褂,你是前端更是如此了》杼叮”
“為什么赊堪?” 我想問,但我并沒有問竖哩,因為從網(wǎng)上搜索而來的理論中哭廉,“兩個空格黨” 這股力量不容小覷,我于是隨波逐流相叁,并且一直感覺不錯遵绰,“兩個空格” 似乎是對的辽幌,JS 嵌套多,空格少看起來不那么 “糟”椿访。
但直到最近乌企,我遭到了兩次背叛。
第一次是我下班回來從 24 寸屏切換到家里的 14 寸筆記本成玫,“天凹咏汀!兩個空格幾乎短到看不見了哭当!” 我急忙切換到四個空格這才稍微好點猪腕,然而我不可能家里一個配置,公司一個配置荣病,我第一次有了拋棄空格的念頭码撰。
第二次是我在某處 copy 了一段代碼(沒辦法,我是面向 GitHub 編程的)个盆,“糟糕!他的代碼是四個空格縮進朵栖!” 于是我還得 “幫他” 把代碼縮進調(diào)整為兩個空格颊亮。
分手理由充分了,我毫不猶豫地說了再見陨溅。
但是 tab 更好终惑?當(dāng)然。
理由之一是 tab 是非常適合 “有個性的人” 的门扇,根據(jù)你的個性你可以調(diào)整 tab 的寬度雹有,同樣是 “一個 tab” 但你可以讓它看起來像 “兩個空格” 或者 “四個空格”,而不是生硬地調(diào)整 space 的數(shù)目臼寄,那樣對你項目的協(xié)作者會非常糟霸奕,除非你們用同一個 size 的屏幕,同一個編程習(xí)慣吉拳。
其實還有非常多的理由质帅,Why tabs are clearly superior 會堅定你選擇 tab 的決心。
總結(jié)一下就是:
- Tab 占的體積更小留攒。
- Tab 的寬度可以因人而異煤惩,更個性化。
- Tab 更利于多人協(xié)作炼邀。
- Tab 不需要依靠某一個工具魄揉,所有編輯器都知道 “如何插入一個 tab”
- Tab 更容易選中,還在為漏選一個 space 而煩惱拭宁?
- Tab 現(xiàn)在在網(wǎng)頁上不再難看洛退,過去網(wǎng)頁上一個 tab 顯得非常寬票彪,而現(xiàn)在 CSS3 的
tab-size
屬性解決了這一痛點。
Use tab to indent, use space to align.
If you are using space, you are making align, not making indent.