• Статья
  • Чтение занимает 3 мин

Node.js — это среда выполнения JavaScript с открытым кодом, работающая на стороне сервера на основе ядра JavaScript V8 (Chrome). Она была создана Райаном Далем (Ryan Dahl) и выпущена в 2009 г.

Работает ли Node.js в Windows?

Да. Windows 10 поддерживает две разных среды для разработки приложений с помощью Node.js:

  • Среда разработки Node.js в Windows.
  • Среда разработки Node.js в подсистеме Windows для Linux.

Чтобы понять, какую среду использовать, ознакомьтесь со статьей Выбор между установкой в Windows и подсистеме Windows для Linux.

Что можно делать с помощью Node.js?

Node.js в основном используется для создания быстрых и масштабируемых веб-приложений. При этом используется управляемая событиями неблокирующая модель ввода-вывода, что делает эту платформу простой и эффективной. Это отличное решение для разработки приложений реального времени, обрабатывающих большие объемы данных и выполняющихся на распределенных устройствах. Ниже приведено несколько примеров того, что можно создать с помощью Node.js.

  • Одностраничные приложения. Это веб-приложения, которые работают в браузере и не требуют повторной загрузки страницы при каждом ее использовании для получения новых данных. Некоторые примеры одностраничных приложений включают в себя приложения социальных сетей, электронную почту, приложения карт, текст в Интернете, инструменты для рисования и т. д.
  • Приложения в режиме реального времени. Это веб-приложения, которые способствуют пользователям получать информацию сразу после публикации автором, а не требовать периодических проверок источника на наличие обновлений. Некоторые примеры RTA включают в себя приложения для обмена мгновенными сообщениями и комнаты чатов, многопользовательские онлайн-игры, которые можно играть в браузере, документы для совместной работы в сети, хранилище сообщества, приложения видеоконференций и т. д.
  • Приложения потоковой передачи данных. Это приложения (или службы), которые отправляют данные или содержимое по мере их поступления (или создания), сохраняя подключение для продолжения загрузки дополнительных данных, содержимого или компонентов по мере необходимости. К некоторым примерам относятся приложения потоковой передачи видео и аудио.
  • API REST. Это интерфейсы, которые предоставляют данные для взаимодействия с веб-приложением другого пользователя. Например, служба API календаря может предоставлять даты и время для концертного помещения, которое может использоваться веб-сайтом локальных событий другого пользователя.
  • Готовые к просмотру приложения на стороне сервера (SSR) . Эти веб-приложения могут работать как на клиенте (в вашем браузере / внешнем интерфейсе), так и на сервере (внутренний), позволяя динамически отображать (создавать HTML) любое известное содержимое и быстро перехватывать неизвестное по мере его доступности. Их часто называют «изоморфными» или «универсальными» приложениями. Службы SSR используют методы SPA, поскольку им не нужно перезагружаться при каждом использовании. Тем не менее, SSR предлагают несколько преимуществ, которые могут быть или не быть важны для вас, например, включение содержимого вашего сайта в результаты поиска Google и предоставление изображения для предварительного просмотра, когда ссылки на ваше приложение публикуются в социальных сетях, таких как Twitter или Facebook. Потенциальным недостатком является то, что они требуют постоянной работы сервера Node.js. С точки зрения примеров, приложение для социальных сетей, поддерживающее события, которые пользователи захотят видеть в результатах поиска и социальных сетях, может извлечь выгоду из SSR, в то время как приложение для электронной почты может хорошо работать как SPA. Вы также можете запускать преобразованные сервером приложения, отличные от SPA, как например блог WordPress. Как видите, все может осложниться, вам просто стоит решить, что важно.
  • Средства командной строки. Они позволяют автоматизировать повторяющиеся задачи, а затем распространить ваше средство по обширной экосистеме Node.js. Примером средства командной строки является cURL, под которым подразумевается клиентский URL и который используется для загрузки контента с URL-адреса Интернета. cURL часто используется для установки таких компонентов, как Node.js, в нашем случае менеджера версий Node.js.
  • Программирование оборудования. Хотя Node.js не так популярен, как веб-приложения, в настоящее время Node.js пользуется все большей популярностью для использования в IoT, например, для сбора данных с датчиков, маяков, передатчиков, двигателей или всего, что генерирует большие объемы данных. Node.js может обеспечить сбор данных, анализ этих данных, обмен данными между устройством и сервером и принятие мер на основе анализа. NPM содержит более 80 пакетов для контроллеров Arduino, raspberry pi, Intel IoT Edison, различных датчиков и устройств Bluetooth.

Дальнейшие действия

  • Выбор между установкой в Windows и подсистеме Windows для Linux (WSL)
  • Установка Node.js в Windows
  • Установка Node.js в WSL
  • Microsoft Learn: Создание приложений JavaScript с помощью Node.js