Есть ли (или несколько) руководство по стилю кодирования для node.js? Если нет, то какие новые стили используются ведущими проектами узлов с открытым исходным кодом?
Я ищу руководство (или несколько руководств) по линиям PEP 8 , канонического руководства по стилю кодирования для Python. Я видел различные руководства по JavaScript, на которые не стоит ссылаться (в основном старые и ориентированные на клиентский JavaScript). Я нашел один интересный Node.js стиль руководства .
Руководство по стилю кодирования или соглашения по кодированию должны включать (но не ограничиваясь ими):
- Макет кода: отступ (2 пробела, 4 пробела, табуляция, ...), новые строки, разрывы строк и т. Д.
- Пробелы, например, «функция (аргумент)» vs. «функция (аргумент)»
- Точка с запятой или без точки с запятой, объявление var, ...
- Именование, например, do_this () vs. doThis (), var_name vs. varName, ...
- node.js и идиомы JavaScript, например, == vs. ===, первый аргумент обратного вызова - это объект ошибки, ...
- Комментарии и документация
- Сопутствующие инструменты, такие как проверка линта, структура модульного тестирования, ...
Эта тема, очевидно, очень субъективна, но я думаю, что это важный шаг сообщества по созданию общего и общепринятого стиля кодирования в процессе становления. Кроме того, дело не только во вкусе. В частности, такие правила, как «используйте === вместо ==», имеют прямое влияние на качество кода.
источник
Ответы:
Я бы просмотрел стандарты кодирования, проверенные JSLint, или посмотрел на автора стандартов кодирования NPM (Исаака Шлютера) .
Вы также можете посмотреть на стиль, используемый известными кодировщиками Node.JS:
На всякий случай закину туда свой;)
Изменить: предложения от @alienhard
ИМО, есть несколько золотых правил, которым вы должны следовать:
with
илиeval
===
более==
var
в соответствующей области - не возвращайтесь к глобальной области.(function(){})()
если вы планируете выпустить код, который работает как на стороне сервера, так и в браузере.err
Обратные вызовы должны принимать в качестве первого аргумента, и если они сами принимают обратный вызов в качестве аргумента, он должен быть последним, напримерcallback(err, param1, param2, callback)
Отступы, интервалы между фигурными скобками и ключевыми словами и размещение точки с запятой - все это вопрос предпочтений.
источник
В городе новый стандарт.
Используйте стандартный стиль .
источник
standard
пакет не любит точки с запятой. Если вам нравятся точки с запятой, есть полустандартВы можете изучить множество хороших практик стиля кодирования из руководств по JavaScript, ориентированных на клиентскую сторону (большинство из них применимо также к node.js в целом, поскольку разница между клиентской и серверной стороной в основном заключается в библиотеках, а не в самом языке). Например, книга « Шаблоны JavaScript» посвящает этой теме некоторые части главы 2 . Также, я бы сказал, что веб-сайт , книга и видео Дугласа Крокфорда являются обязательными для просмотра материалами, чтобы принять конкретные стили кодирования и лучшие практики JavaScript.
источник
При использовании узла из терминала для вашего исходного кода полезно использовать пробелы для отступов. В противном случае каретка «здесь ошибка» не будет совпадать.
С вкладками:
С пробелами:
Это может быть проблема только Mac, но я подозреваю, что нет.
источник
Прошло некоторое время с тех пор, как я задавал этот вопрос ... а пока я нашел это отличное руководство по JavaScript:
Принципы написания последовательного идиоматического JavaScript
https://github.com/rwldrn/idiomatic.js/
источник
У Airbnb есть неплохое руководство по стилю Javascript https://github.com/airbnb/javascript
источник
Для Coffee-Script, где плохие отступы означают ошибки компиляции
использование
популярный кофе проекты
zombie
,brunch
использует эту установку для углублений.Редактировать:
Собственно, просто используйте это! https://github.com/paulmillr/code-style-guides (один из основных участников
brunch
)источник