當前位置:
首頁 > 知識 > 為什麼文件名要小寫?

為什麼文件名要小寫?

來自:阮一峰的網路日誌


上周,《中文技術文檔寫作規範》加入了文件的命名規則。


"文件名建議只使用小寫字母,不使用大寫字母。"

"為了醒目,某些說明文件的文件名,可以使用大寫字母,比如README、LICENSE。"


網友看見了,就提問為什麼文件名要小寫?

為什麼文件名要小寫?


說實話,雖然這是 Linux 傳統,我卻從沒認真想過原因。趕緊查資料,結果發現四個很有說服力的理由,支持這樣做。


下面就是這四個理由。另外,文後我還會發布一條前端培訓的消息。


一、可移植性


Linux 系統是大小寫敏感的,而 Windows 系統和 Mac 系統正好相反,大小寫不敏感。一般來說,這不是大問題。


但是,如果兩個文件名只有大小寫不同,其他都相同,跨平台就會出問題。

foobar


Foobar


FOOBAR


fOObAr


上面四個文件名,Windows 系統會把它們都當作foobar。如果它們同時存在,你可能沒辦法打開後面三個文件。

另一方面,在 Mac 系統上開發時,有時會疏忽,寫錯大小寫。


// 正確文件名是 MyModule.jsconst module = require( ./myModule );


上面的代碼在 Mac 上面可以運行,因為 Mac 認為MyModule.js和myModule.js是同一個文件。但是,一旦代碼到伺服器運行就會報錯,因為 Linux 系統找不到myModule.js。


如果所有的文件名都採用小寫,就不會出現上面的問題,可以保證項目有良好的可移植性。

二、易讀性


小寫文件名通常比大寫文件名更易讀,比如accessibility.txt就比ACCESSIBILITY.TXT易讀。


有人習慣使用駝峰命名法,單詞的第一個字母大寫,其他字母小寫。這種方法的問題是,如果遇到全部是大寫的縮略詞,就會不適用。

為什麼文件名要小寫?



比如,一個姓李的紐約特警,無論寫成NYPoliceSWATLee還是NyPoliceSwatlee,都怪怪的,還是寫成ny-police-swat-lee比較容易接受。


三、易用性


某些系統會生成一些預置的用戶目錄,採用首字母大寫的目錄名。比如,Ubuntu 在用戶主目錄會默認生成Downloads、 Pictures、Documents等目錄。

為什麼文件名要小寫?



Mac 系統更過分,一部分系統目錄也是大寫的,比如/Library/Audio/Apple Loops/。


另外,某些常見的配置文件或說明文件,也採用大寫的文件名,比如Makefile、INSTALL、CHANGELOG、.Xclients和.Xauthority等等。


所以,用戶的文件都採用小寫文件名,就很方便與上面這些目錄或文件相區分。


如果你打破砂鍋問到底,為什麼操作系統會採用這樣的大寫文件名?原因也很簡單,因為早期 Unix 系統上,ls命令先列出大寫字母,再列出小寫字母,大寫的路徑會排在前面。因此,如果目錄名或文件名是大寫的,就比較容易被用戶首先看到。

為什麼文件名要小寫?



四、便捷性


文件名全部小寫,還有利於命令行操作。比如,某些命令可以不使用-i參數了。

為什麼文件名要小寫?



另外,大寫字母需要按下 Shift 鍵,多多少少有些麻煩。如果文件名小寫,就不用碰這個鍵了,不僅省事,還可以提高打字速度。


程序員長時間使用鍵盤,每分鐘少按幾次 Shift,一天下來就可以省掉很多手指動作。長年累月,也是對自己身體的一種保護。


綜上所述,文件名全部使用小寫字母和連詞線(all-lowercase-with-dashes),是一種值得推廣的正確做法。


(正文完)


本文編號2250,以後想閱讀這篇文章直接輸入2250即可。

您的贊是小編持續努力的最大動力,動動手指贊一下吧!


本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 程序猿 的精彩文章:

Linux進程管理之「四大名捕」
對,廣東億迅要招JAVA!
27款iOS 開源庫,讓你的開發溜到飛起
編程工具除外,猿哥都用了哪些「利器」
你不知道的 Linux 使用技巧

TAG:程序猿 |

您可能感興趣

什麼是罪犯側寫?
為什麼日文名翻譯成中文不音譯,中文名譯成日文卻需要?
為什麼喜歡帶插圖的文字?
什麼叫做文化?
人為什麼要說謊?
寫什麼字,用什麼宣紙,你了解多少?
你知道為什麼不能用紅筆寫名字嗎?
民間禁忌:名字為什麼要避諱?原因竟是這個
到底什麼樣的口腔潰瘍需要看醫生?答案都在這篇文章里
做試管嬰兒需要什麼條件?
為什麼每個人都應該讀庫克的出櫃文章?
為什麼文字喜歡咬你?因為你是這六種人
爸媽太會取名字是一種什麼體驗,簡直要笑尿!
為什麼小孩喜歡說疊詞?
端午文化到底是什麼樣的文化?
什麼是暖男?暖男必備什麼條件?
速寫的真諦是什麼?
《明史》為什麼把好人寫成壞人?
西遊記這部小說究竟寫了些什麼?在什麼時候問世的呢
吃粽子要注意點什麼?