Лучшие практики Node.js — как стать лучшим разработчиком Node.js в 2018 году

Node.js внешний интерфейс Безопасность Программа перевода самородков

Лучшие практики Node.js — как стать лучшим разработчиком Node.js в 2018 году

За последние два года моей собственной традицией стало ежегодно писать советы о том, как стать лучшим разработчиком Node.js на год вперед. Этот год не исключение! 🤗

Если вам интересен мой предыдущий новогодний совет, вы можете прочитать его в блоге RisingStack:

Без лишних слов, давайте посмотрим на наши рекомендации на 2018 год!

использоватьasync-await

С выпуском Node.js 8,asyncФункции уже общедоступны. имеютasyncС помощью функций вы можете заменить обратные вызовы и написать асинхронный код, который читается как синхронный код.

но что такоеasyncфункция? Давайте рассмотримРекомендации по использованию асинхронной функции Node.jsОдна статья:

asyncФункции позволяют вам писать код, который читается как синхронный код, но на самом деле основан наPromiseкод. как только вы используетеasyncключевое слово для определения функции, вы можете использовать его в теле функцииawaitключевые слова.asyncПри вызове функция возвращаетPromise. когдаasyncКогда значение возвращается в теле функции,Promiseзавершенный. когдаasyncКогда функция выдает ошибку,Promiseне удалось (отказано).

awaitключевое слово может использоваться для ожиданияPromiseГотово и возвращает значение результата. если переданоawaitЗначение ключевого слова неPromise, он преобразует его в законченныйPromise.

Если вы хотите овладетьasyncфункции, я рекомендую вам просмотреть эти ресурсы:

Пусть ваше приложение завершается изящно

При развертывании новой версии приложения необходимо заменить старую версию. ты используешь,Будь то Heroku, Kubernetes, супервизор или любой другойМенеджер процессов сначала отправитSIGTERMсигнал, уведомляющий о том, что он вот-вот будет прерван. Как только приложение получает сигнал, оно должноПрекратите принимать новые запросы, завершите все текущие запросы и очистите используемые ресурсы.. Ресурсы обычно включают подключения к базе данных и блокировки файлов.

Чтобы сделать этот процесс еще проще, мы опубликовали на GoDaddy под названиемterminusМодуль с открытым исходным кодом, который поможет вашему приложению добиться корректного завершения.Проверьте прямо сейчас ☺️

Используйте единое руководство по стилю во всей компании

Принятие руководства по стилю в компании с командой разработчиков, состоящей из сотен человек, может оказаться непростой задачей — заставить всех согласиться с одним и тем же набором правил может быть непосильной задачей.

ИМХО: вы никогда не сможете заставить сотни разработчиков согласиться с одним и тем же набором принципов, даже если это принесет очевидные преимущества, такие как разрешение командам переключаться только на одно отличие) стиль кодирования.

Если вы работаете в такой командной атмосфере, я обнаружил, что лучше всего доверить опытному программисту работу с другими, чтобы решить, какие рекомендации содержит руководство по стилю, но последнее слово остается за ним. На самом деле не имеет значения, о чем руководство, пока все не смогут следовать одному и тому же набору правил (я не хочу разжигать спор о точках с запятой). Важно то, что решение должно быть принято в какой-то момент.

Сделайте безопасность обязательным условием

Мы видим все больше и больше компаний, перечисленных вhaveibeenpwnedОн - Держу пари, ты не хочешь быть следующим. Когда вы выпускаете новую часть кода для своих пользователей, проверка кода должна включать экспертов в области безопасности. Если в вашей компании нет таких талантов или они очень, очень заняты, хорошим решением будет что-то вродеLift SecurityТакое сотрудничество компании.

И вы, как разработчик, также должны стремиться обновлять свои знания в области безопасности. Для этого рекомендую вам ознакомиться с этими материалами:

Выступайте на встречах или конференциях

Еще один способ стать лучшим разработчиком и еще лучше научиться выражать себя — выступать на митапах или конференциях. Если вы никогда не пробовали это, я рекомендую начать с местной встречи, прежде чем пытаться подать заявку на участие в национальной или международной конференции.

Я понимаю, что публичное выступление может быть трудным. Пока я готовлю свою первую речь,Speaking.ioМне очень помогло, советую и вам посмотреть. Если вы готовитесь к своему первому выступлению и хотите получить обратную связь, вы можетеTwitterПриходите и поговорите со мной, я буду рад помочь!

Если у вас есть тема, которой вы хотите поделиться на конференции, вы можете проверить ее на Github.2018 Веб-конференцияСборник сочинений, это круто!

Пишите модули напрямую, используя новый API браузера

в сентябреMikealсуществуетModern ModulesХорошая статья была опубликована на . Одно из моих любимых занятий — написание модулей с использованием API браузера, полифиллинг Node.js при необходимости. Очевидным преимуществом этого является то, что вы можете опубликовать меньший код JavaScript в браузере (и ускорить загрузку страницы). С другой стороны, никого не волнует, слишком ли велики ваши серверные зависимости.

Примите правило 12 факторов разработки приложений

Принципы разработки приложений «12 факторов» описывают лучшие практики написания веб-приложений, поэтому они также включены в мой список предложений в этом году.

Соблюдение правила 12 факторов становится все более и более важным, поскольку использование Kubernetes и других механизмов оркестрации продолжает расти. Они охватывают следующие области:

  1. Один эталонный тест, несколько развертываний
  2. Показать декларативные и отдельные зависимости
  3. Хранить конфигурацию в среде
  4. Относитесь к серверным службам как к дополнительным ресурсам
  5. Строгое разделение сборки и запуска
  6. Запустите приложение как один или несколько процессов без сохранения состояния.
  7. Обслуживание через привязку к порту
  8. Масштабирование модели процесса
  9. Быстрый запуск и корректное завершение для максимальной надежности
  10. Сохраняйте среду разработки, предварительной версии и онлайн-среды одинаковыми, насколько это возможно.
  11. Рассматривайте журнал как поток событий
  12. Задачи фонового управления выполняются как одноразовые процессы

Узнайте о новых функциях ECMASCript

Несколько новых функций ECMAScript могут значительно повысить вашу производительность. Они помогают вам писать понятный и чистый код. Среди моих любимых функций (Честно говоря, они не очень новые):

Если вы хотите узнать полное содержание новых функций ECMAScript, я рекомендую прочитать эту книгу.ES6 & Beyond.


Вы хотите добавить другие предложения в этот список? Пожалуйста, дайте мне знать в комментариях.


Программа перевода самородковэто сообщество, которое переводит высококачественные технические статьи из Интернета сНаггетсДелитесь статьями на английском языке на . Охват контентаAndroid,iOS,внешний интерфейс,задняя часть,блокчейн,продукт,дизайн,искусственный интеллектЕсли вы хотите видеть более качественные переводы, пожалуйста, продолжайте обращать вниманиеПрограмма перевода самородков,официальный Вейбо,Знай колонку.