當前位置: 華文問答 > 數位

沒有檔字尾名,是先進設計還是落後設計?

2023-10-26數位

有字尾名相比於沒有字尾名,當然是先進設計。

檔本身只是一堆二進制數,按不同的協定/格式去解析,得到不同結果,用對了那就正常、用錯了就是亂碼。為了規範,檔在真正的內容之前都加了一些檔頭,用來指示檔格式。對於程式來說,讀這個檔頭就能知道格式,就知道有沒有能力解析,即是否支持這種格式,跟字尾名沒有半毛錢關系。

有沒有字尾名是不影響程式讀檔的。那麽,檔字尾名是為了方便誰呢? 主要還是方便使用者

如果沒有字尾名,使用者光靠眼睛是看不出來檔格式的,為了用對程式去開啟,需要依賴一個專門程式(比如file命令)先讀檔頭再選合適的程式,這當然增加了負擔,即便交給作業系統自動跑這個流程,也增加了不必要的開銷。有了字尾名, 作業系統把字尾名和對應程式關聯關系存起來 就行,用一點點儲存空間代價,換取了時間效率, 這才是核心

更重要的是, 作業系統還給了使用者客製的自由 。每種檔格式,可能支持它的程式有很多,使用者可以客製最喜歡的去操作,即預設程式。

有人會提,Windows為啥預設不顯示字尾名。雖然但是, 不顯示不代表刪除了,Windows依然儲存了字尾名與關聯程式的關系表 ,可能是微軟覺得檔名長了看著礙眼,小白使用者無需關註,但稍微懂點電腦的都會把字尾名顯示出來,畢竟Windows下有著 多層".doc.docx"檔字尾的名場面

在自由度不夠的系統(不點名iOS了)裏,每個程式就是一個私有領地,格式是程式客製, 操作的邏輯是先選程式,再選要操作的檔 ,不要字尾名確實也行。但這種情況,也可以做到:程式A操作的檔,完全不給程式B使用,甚至把檔都可以藏起來不給別的程式看,刪除則把程式連同新建、編輯的檔數據全部刪除。夠不夠先進?