Websoft

понедельник, февраля 26, 2007

О вреде технического прогресса

Современные операционные системы отучили нас задумываться об ограничениях при именовании сохраняемых файлов. То, что в свое время имя файла было ограничено принципом 8.3 и латиницей с цифрами, большинство нынешних пользователей воспринимает как страшную сказку о былых временах. Однако, заметим, что исчезло хоть и большинство ограничений, но НЕ ВСЕ!
Поскольку блог наш тематический, отметим те ограничения на имена файлов (графики, аудио, видео и пр.), которые важны при создании электронных учебных материалов. Откуда тут могут "расти ноги" у ограничений?

1. Операционная система. Современные версии Windows, казалось бы, позволяют назвать файл как угодно. Ан нет, есть ряд символов, которые система не позволит Вам использовать при именовании файлов. А именно:

< > : " * | ? / \

2. Web-браузер. Подавляющее большинство современных электронных учебных материалов используют web-браузер для их просмотра. Однако, некоторые символы, которые операционная система позволит Вам использовать при именовании файлов, при попадании в адресную строку браузера приобретают совершенно определенное значение (например, символ # воспринимается браузером как начало адреса метки на текущей странице, а символ & используется как разделитель параметров, передаваемых в браузер через адресную строку). Как следствие, файл, в имени которого содержится такой символ, может быть просто не загружен браузером (и не надо обижаться, что пропала картинка, которую Вы только что вставили в курс с таким названием...).

3. Web-сервер. При локальном запуске учебного курса (т.е. с диска Вашего компьютера или локального файл-сервера) фактически используется механизм поиска файлов операционной системы, следовательно, на названия файлов в этом случае накладывабтся только ограничения №№1 и 2. Однако, как только курсы становятся доступны через Web (например, загружаются в СДО), к вышеприведенным ограничениям добавляется еще одно: протокол HTTP, по которому будут запрашиваться файлы с сервера, добавляет к списку нежелательных еще целый ряд символов, в список которых, входит, например, даже обычный пробел! А также - все русские буквы (заодно со всей верхней половиной ASCII-таблицы). Оговоримся, что многое в этом ограничении зависит от используемого в СДО web-сервера и его настроек, но зачем нужен лишний риск? Ведь цель создания учебных материалов в том, чтобы их увидели.

4. Операционная система сервера. Привыкнув работать под Windows, мы обычно забываем, что заглавные и прописные буквы - для компьютера совершенно разные символы. И действительно - cервер из семейства Windows "простит" Вас и вернет на запрос файла abracadabra.mp3 файл, в действительности имеющий имя, скажем, ABRAcadabra.MP3. А вот web-сервера, базирующиеся на UNIX-семействе просто пришлют в ответ ошибку 404 - Файл не найден (и формально будут правы).

Итак, резюмируем. Правила хорошего тона при именовании файлов и написании ссылок на них при создании электронных учебных материалов:
  1. Забудьте русский язык. Используйте латиницу и цифры.
  2. Забудьте о существовании пробелов. Если все же они нужны - замените их на подчерк _.
  3. Забудьте о существовании знаков препинания. Точка должна отделять расширение файла. Все прочие знаки препинания вредны.
  4. Все ссылки на файлы должны содержать их точные имена с полным соблюдением регистра.

1 комментарий:

Андрей Балыков комментирует...

Да, это правильная статья. Вячеслав, хорошо, что Вам удалось собрать рекомендации в достаточно компактный список. Не с целью дополнить этот список, а скорее поделиться опытом, дополнительно рекомендую для соблюдения "правила регистра" ссылки на файлы делать только в нижнем регистре. Соответственно, в нижнем регистре именовать и сами файлы (включая расширение). Это связано с тем, что некоторые программы имеют подлое свойство менять регистр по своему усмотрению. Иногда получается, что название файла меняется в зависимости от того, какой программой он последний раз редактировался. (К счастью последние годы такая ситуация редка). Если все ссылки на внешние файлы сделаны в нижнем регистре, то привести все в порядок перед публикацией (или архивацией) становится просто: достаточно в директории курса запустить утилиту переводящую все символы файлов в нижний регистр.