Чому слід віддавати перевагу розширенням файлів у нижньому регістрі, наприклад, .jpg над великими, наприклад .JPG?


5

Багато (більшість?) Програм відзначають розширення файлів у нижньому регістрі. ls команда в bash навіть друкує foo.jpg за умовчанням виділено як зображення, але ні *.JPG.

Нижчі символи краще відрізняти один від одного, тому що вони використовують нащадків.

Чи існує стандарт або угода, що передбачає віддати перевагу розширенням файлів нижчих регістрів на системах Linux?

(подібне, але інше питання: https://softwareengineering.stackexchange.com/questions/186313/lowercase-in-linux-file-names )


Що таке спутник?
TwirlMandarin

Відповіді:


6

Необхідно дотримуватися наступних умов імен.

  • Всі імена файлів мають бути в нижньому регістрі.
  • Виняток: звичайні текстові файли, такі як README, INSTALL, NEWS, AUTHORS
  • Не використовуйте пробіли в іменах файлів. Використовуйте або "-", або "_".
  • Використовуйте лише буквено-цифрові символи, періоди, підкреслення та дефіси. Зробити імена файлів стислими.
  • Уникайте надто довгих і складних імен файлів. Уникайте справи Camel. (Введення великої літери в кожному слові. Напр. ThisIsCamelCase.sh)
  • Використовуйте таке ж розширення для кожного типу файлу. (.jpg vs .jpeg)

Ці правила стали галузевою конвенцією, тому що ви просто ніколи не знаєте, як інший код буде обробляти імена файлів. Імена файлів з пробілами щось порушують? Чи буде він розпізнавати .jpg при ігноруванні файлів .jpeg? Пам'ятайте, що імена файлів чутливі до регістру. Файл Readme не є тим самим файлом, що і README. Хороша річ про конвенції, як тільки ви їх знаєте, це те, що вони економить ваш час, тому що немає необхідності замислюватися над тим, як ваші файли будуть названі.

http://www.linfo.org/file_name.html

http://docs.oracle.com/html/B13786_01/ap_k.htm

http://www.cyberciti.biz/faq/linuxunix-rules-for-naming-file-and-directory-names/

http://gcc.gnu.org/onlinedocs/gcc-3.4.4/gnat_ugn_unw/File-Naming-Rules.html


Не є спільним для camelcasing java.class es?
Jarmund

1
Якщо ви працюєте з Java, ви працюєте з Java. Угоди про найменування є агностичними для платформи, і вони є одними з перших речей, які ви дізнаєтеся, що часто викликають проблеми для нових розробників.
Alex Atkinson

Я не міг бачити посилання на сайт Oracle як джерело. Сайт cyberciti - це лише особистий блог ...
Jonas Stein

Я згадую, що правила стали галузевою конвенцією, оскільки ніколи не було написано жодного з них. Не варто знижувати особисті блоги. Там більше корисної інформації в блогах, ніж у всіх технічних специфікаціях у світі. Вам не доведеться дотримуватися цих загальноприйнятих найкращих практик, але ви будете роздратовані, коли ви знайдете причину для декількох місяців у проекті, який вже відстає від графіка. : P
Alex Atkinson
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.