Basit cevap: Çünkü bu şekilde tanımlanır.
Daha uzun cevap: Bu şekilde tanımlanmıştır, çünkü bazı işlemler kavramsal olarak daha basittir:
- Bir dosya 20 harf "A" içeriyorsa ve tüm "A" harflerini kaldırırsanız, dosya 20 bayt kısalır. Sadece "AAAAAAAAAAAAAAAAAAAAA" dan oluşan bir dosyada aynı işlem, kaybolan bir dosyanın özel durumuyla ilgilenmek zorunda kalacaktır.
- Daha pratik olarak, bir metin dosyasının son satırının silinmesi özel kasayla yapılmalıdır.
- Düzenli olarak yedekleme yapan metin editörleri, kullanıcının son satırı silme, öğlen yemeğine gitme, sonra geri dönme ve başka bir satır ekleme durumuyla başa çıkabilmesi için özel durum koduna ihtiyaç duyacaktır. Diğer bazı kullanıcılar ortalama olarak bu isimde bir dosya oluşturduysa, başka komplikasyonlar ortaya çıkar.
Daha fazlasını yapabilirsiniz: * Hata günlüğü dosyaları boş oluşturulma eğilimindedir, eğer ve sadece bir hata olursa doldurulacaktır. * Kaç hata olduğunu bulmak için, günlük dosyalarındaki satır sayısını sayarsınız. Günlük dosyası boşsa, hata sayısı sıfırdır, bu da mantıklıdır. * Bazen ilgili tüm metnin dosya adında olduğu dosyaları görürsünüz, örn this-is-the-logging-directory
. Bu, aşırı yüklenen yöneticilerin yükleme sonrasında boş dizinleri silmelerini önler ve ayrıca bir programın veya kullanıcının yanlışlıkla bir dizini görmek istediği bir dosyayı yanlışlıkla oluşturduğu hataları önler. git
Program (ve diğerleri) boş dizinleri görmezden gelme eğilimi, ve bir proje / yönetici / kullanıcı dizin hiçbir yararlı içerik (henüz) olsa bile varolduğunu bir sicile sahip olmak istiyorsa, sen adında boş bir dosya görebilirsinizempty
veya empty.directory
.
Hiçbir işlem daha karmaşık hale gelmez:
- Birleştirme dosyaları: bu sadece boş bir dosyaya sahip bir no-op'tur.
- Bir dosyada bir dize aranıyor: bu, "dosya arama teriminden daha kısa ise, arama terimini içeremez" standardının kapsamı dahilindedir.
- Dosyadan okuma: programların beklediklerini elde etmeden önce dosyanın sonuna isabet etmesi gerekir, bu yüzden yine sıfır uzunluklu bir dosya durumunda programcı için fazladan düşünmeyi içermez: -En başından itibaren dosya.
Dosyalarda, "herhangi bir yerde kaydedilmiş bir dosya var" yönü (inode ve / veya dosya adı) yukarıdaki hususların üstüne gelir, ancak boş dosyalar işe yaramazsa dosya sistemleri bunu yapmaz.
Genelde, dosya adları ile ilgili olanlar hariç, yukarıdaki nedenlerin tümü dizilere uygulanır. En çok karakter dizileri olan dizelere: Sıfır uzunluklu dizeler programların içinde yaygındır. Dize anlamsız ise, genellikle kullanıcı düzeyinde dize izin verilmez: bir dosya adı bir dizedir ve çoğu dosya sistemleri boş bir dize dosya adı olarak izin vermiyor; dahili olarak, parçalardan dosya adları oluştururken, program parçalardan biri olarak boş bir dizeye sahip olabilir.