Плохо ли давать двум очень разным файлам с одинаковым общим назначением одно и то же имя, разделяя их на разные каталоги?
<script src="client_scripts/app/player_stats/generator.js"></script>
<script src="client_scripts/app/coach_settings/generator.js"></script>
Я хотел бы, чтобы имена моих файлов были короткими, и оба файла имеют одинаковое общее назначение, но не являются идентичными. Я не уверен, будет ли это считаться плохой практикой в профессиональной среде программирования. Я хотел бы знать, какова лучшая практика в этой ситуации.
В качестве альтернативы, за счет короткой длины имени, я мог бы использовать:
<script src="client_scripts/app/player_stats/player_stats_generator.js"></script>
<script src="client_scripts/app/coach_settings/coach_settings_generator.js"></script>
naming
file-structure
CuriousWebDeveloper
источник
источник
statsgen.js
,settingsgen.js
Ответы:
Рассмотрите соотношение затрат и выгод ваших двух вариантов:
Может ли повторное использование одного и того же имени вызвать путаницу или конфликты имен? Вероятно, нет, так как они находятся в разных папках. Имя «player_stats / generator.js» эквивалентно «player_stats_generator.js». Однако, если вы увидите в будущем причину объединения ваших js-файлов в один каталог (развертывание? Я не знаю), то это должно стать хорошим индикатором для предоставления уникальных имен.
Будет ли использование более длинных имен включать много постороннего набора? Возможно нет. Мало того, что многие IDE-среды JS автоматически заполняют имена файлов в проекте для вас, это также фрагмент кода, который, вероятно, пишется только самое большее - один раз для каждого файла. Код, который часто набирается, - это классы и функции внутри js-файлов, и они (надеюсь) не конфликтуют.
Какую информацию об ошибке вы получаете при отладке? Если наиболее распространенным сообщением об ошибке является «Ошибка в строке 34 из
<filename.js>
», то рассмотрите возможность присвоения им уникальных имен, поскольку получение ошибок только в файле generator.js, а затем попытка определить с помощью контекста, каким генератором это было, может быть проблемой.источник
На практике, если ваша IDE показывает имена файлов на вкладках, если вы используете одно и то же имя для каждого файла, вы получите вкладки с одинаковым именем. Это может быть очень раздражающим. У одного проекта, который я взял на себя, есть эта проблема, и очень трудно открыть 15 вкладок, половина из которых с одинаковыми именами файлов.
Итак ... используйте более описательные имена.
источник
index.html
]. Меня раздражают программы, которые затрудняют определение пути, связанного с конкретным файлом.some_super_long_descriptor_that_needs_more_description.js
устанавливаете его отдельно отsome_super_long_descriptor_that_needs_more_cowbell.js
Здесь есть четкий решающий фактор: СУХОЙ (не повторяйте себя).
Каждое имя файла не должно быть другим; вот для чего нужны пути . Можете ли вы представить, сколько разных системных или программных файлов на вашем компьютере? Что если у каждого из них должно быть уникальное имя? В какой-то момент мы просто делаем имя файла копией пути.
Если лучшим описанием Javascript-файла в контексте
client_scripts > app > player_stats
действительно являетсяgenerator
, его путь должен бытьclient_scripts/app/player_stats/generator.js
.Этот вопрос находится по адресу programmers.stackexchange.com/questions/ 250481 . Существует также serverfault.com/questions/ 250481 .
250481
это одна вещь в контексте вопросов программистов, и другая вещь в контексте вопросов о сбое сервера.Пути (или URL) хороши тем, что являются вложенными идентификаторами. Давайте использовать их таким образом :)
источник
Всегда используйте описательные имена над короткими именами, если это не что-то вроде математической константы или переменной цикла, где соглашения рассматриваемого языка предпочитают короткие имена. Например, если вы называете переменную «пи» и хотите, чтобы она была достаточно точным значением числа «пи», то имя будет хорошим и поможет понять смысл. С другой стороны, если у вас есть генератор, который генерирует термины ряда Тейлора для Pi и складывает их вместе в приблизительное число pi, вы хотите назвать его как «taylorPiGenerator или подобный».
Хорошие имена теперь экономят время рефакторинга или, что еще хуже, массивные ошибки позже.
Книги « Чистый код» и « Полный код» подробно описывают причины и причины хорошего именования, но они ни в коем случае не являются единственными источниками.
источник
Это зависит от технологии, с которой вы работаете. Имена должны идентифицировать элементы, а пути должны идентифицировать контекст. Я согласен, что хорошее именование важно, но эй, пути тоже имена. Но с практической точки зрения, если вы используете что-то вроде Javascript, вероятно, лучше сохранить более точные имена для конечных элементов. Если вы работаете с инструментами, которые учитывают это, например, с Python , рекомендуется использовать одно и то же имя с другим путем (модуль, пространство имен). Если вы посмотрите на JavaВы также найдете классы с одинаковыми именами и разными пакетами. Можно пойти дальше и сказать, что методы называются действиями в контексте класса, и у нас есть методы с одинаковыми именами в разных классах, которые сами могут называться одинаково, но помещаться в разные пакеты. Дзен Питона говорит:
Но в javascript есть свои особенности и преимущества, поэтому я бы порекомендовал вам использовать разные имена (даже если файлы находятся в разных путях). Также вы можете найти шаблон модуля в javascript, который может помочь вам написать более чистый код:
Вы могли бы съесть свой торт и съесть его тоже.
источник