Как уже упоминалось, это практика среди многих разработчиков, но плохая. Если вам приходится прибегать к подобным соглашениям в своих методах программирования, вам следует изучить язык, методы и шаблоны, прежде чем пытаться использовать язык. Если кто-то не может различить публичные / приватные методы в вашем коде без использования «подчеркивания», то ваши навыки документирования крайне отсутствуют. Многие публичные проекты в сети очень плохо документированы, поэтому, вероятно, «соглашения о подчеркивании» были «приняты» большинством недостаточно образованных разработчиков, в то время как другие решили пойти по пути, а не придерживаться формальных шаблонов и методов проектирования. Существует причина, по которой «подчеркивание» не было записано в версиях ES6 / 7.
В своем блоге я недавно наткнулся на менеджера по программному обеспечению, который заявил: « Соглашение об именах подчеркивания позволяет с первого взгляда легко определить, предназначена ли переменная функция для общего или частного использования. ». Мой ответ: «Комментарии похожи на картинки, в данном случае они стоят тысячи подчеркиваний.
Существует бесплатный инструмент документирования под названием Doxygen. Хотя он не поддерживает JavaScript, он может генерировать профессиональную документацию для ваших приложений JavaScript, когда вы используете префиксы Doxygen в своих комментариях. Создать приложения JavaScript с документацией для разработчиков и пользователей очень просто, если вы приложите немного усилий к комментариям кода.
Помните, что существуют инструменты, которые могут удалять комментарии и операторы консоли для «Рабочих выпусков». При этом использование исходных карт также является пустой тратой времени и ресурсов. Не минимизируйте, пока не будете готовы к публикации .. т.е. Dev Build (без минификации, сохраните комментарии и операторы консоли), Release Build (удалите комментарии и операторы консоли и минимизируйте сборку Dev. Нет необходимости перекомпилировать Dev Build при его выпуске качественный код, просто подготовьте его к выпуску и разверните).