Введение в Node.js

Node.js - это …

Node.js - это JavaScript платформа, основанная также на JavaScript движке -  Google Chrome V8. Node.js написан на C++ и был представлен миру в 2009 году его автором Райаном Далом.

Основная задача Node.js - расширить возможности применения языка JavaScript, чтобы создавать приложения ориентированные не только на клиента (браузер), но и на другие платформы, однако наиболее используемой платформой является веб-сервер и по этой причине Node.js часто называют серверный JavaScript.

В основе Node.js лежит событийно-ориентированное и асинхронное (реактивное) программирование с неблокирующим вводом/выводом.

Node.js не имеет графического интерфейса, поэтому для работы с ним необходимо использовать терминал (консоль), а все основные взаимодействия осуществляются с помощью команд, которые будут рассмотрены в следующих статьях.

Node.js представляет собой бесплатный продукт с открытым исходным кодом, используемый тысячами разработчиков по всему миру.

Почему Node.js?

Основным преимуществом Node.js является то, что в нем используется неблокирующий ввод-вывод (unblocking I/O) или, другими словами, асинхронная многопоточность. При многопоточности сервер отвечает на запросы приложения не в порядке их поступления и очередности, а выделяет для каждого запроса отдельный поток и обрабатывает его в нем отдельно, не создавая очередей, в результате чего, скорость реагирования сервера на запросы и создание ответов на них значительно увеличивается.

Особенности Node.js

  • Модульность - Node.js может работать с протоколами HTTP, UDP, TCP, файловой системой. Подключать библиотеки на других языках и работать с устройствами ввода-вывода. Все это может быть реализовано с помощью соответствующих модулей.
  • Асинхронность - в силу своей быстроты ответов на запросы Node.js отлично подходит для создания приложения реального времени (real-time) такие как чаты, видео стримминги, игровые сервера и многие другие, где скорость обработки запросов критична.
  • Прост в освоении - для работы с Node.js не понадобится много времени на его освоение т.к. для написания приложения используется язык JavaScript, поэтому если Вы неплохо владеете этим языком, то Node.js не покажется Вам чем-то сложным.
  • Мультиплатформенность - Node.js может работать под такими операционными системами как, Unix, Linux, Mac OS X и Windows. Для каждой из систем существует свой инсталлятор, поэтому установка Node.js мало отличается от установки любых других программ.
  • Скорость - благодаря использованию движка V8.

Возможности Node.js

  • запуск JavaScript кода вне браузера (на копьютере или сервере)
  • чтение, удаление и обновление файлов
  • взаимодействие с базами данных

Что нужно знать перед изучением Node.js

  • JavaScript
  • HTML
  • немного о терминале