Назад

Что такое Node.js?

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

В чём преимущество Node?

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

Откуда Node вообще взялся?

Node появился в 2009 году благодаря Райану Далу. До этого в серверах царил подход «один поток на каждое соединение», а Дал придумал использовать систему, которая ориентирована на события. То есть реагирует на действие или бездействие и выделяет под это ресурс. Главная цель Node — построение масштабируемых сетевых серверов.

Кто-то из крупных компаний использует Node?

Конечно, вот неполный список:


Источник: quora.com

eBay постепенно переходит на Node, как и веб-версия PayPal. В LinkedIn ещё в 2012 году переехали с Ruby On Rails на Node и сразу ощутили преимущества этой платформы: 27 серверов показали 20-кратное увеличение скорости работы.

Что я могу написать на Node?

Полноценную программу для веба, Linux, OS X и Windows.

А если подробнее?

Не вопрос. Node удобен для создания API — уже существуют удобные библиотеки вроде Loopback.

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

А что-нибудь модное Node умеет?

Конечно. Node — это родной дом всего «интернета вещей» (Internet of Things, IoT). Термостаты, фитнес-трекеры — всё это можно запрограммировать через Node.

Node случайно не теряет популярность?

Совсем наоборот. Вот график интереса к Node с 2009 года в поиске Google:

Интерес к Node стремительно растёт и уже обходит по этому показателю Ruby и Objective-C.

Убедили, хочу выучить Node. Что для этого нужно знать?

Перед тем, как осваивать Node, нужно знать JavaScript и в общих чертах понимать, как устроен клиент и сервер. Node — платформа для full-stack программистов, то есть для тех, кто может сделать приложение сам, а не специализируется на какой-то его части.

 

У вас нет прав для комментирования.