Что такое Node.js и зачем его учить
29 июля в «Нетологии» стартует курс «Node, Angular и MongoDB: разработка полноценных веб-приложений». Сегодня рассказываем, зачем нужен язык Node.js и почему его стоит выучить прямо сейчас.
Что такое Node.js?
Node.js (или просто Node) — это серверная платформа для работы с JavaScript через движок V8. JavaScript выполняет действие на стороне клиента, а Node — на сервере. С помощью Node можно писать полноценные приложения. Node умеет работать с внешними библиотеками, вызывать команды из кода на JavaScript и выполнять роль веб-сервера.
В чём преимущество Node?
C Node проще масштабироваться. При одновременном подключении к серверу тысяч пользователей Node работает асинхронно, то есть ставит приоритеты и распределяет ресурсы грамотнее. Java же, например, выделяет на каждое подключение отдельный поток.
Откуда Node вообще взялся?
Node появился в 2009 году благодаря Райану Далу. До этого в серверах царил подход «один поток на каждое соединение», а Дал придумал использовать систему, которая ориентирована на события. То есть реагирует на действие или бездействие и выделяет под это ресурс. Главная цель Node — построение масштабируемых сетевых серверов.
Кто-то из крупных компаний использует Node?
Конечно, вот неполный список:
Источник: strongloop.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 программистов, то есть для тех, кто может сделать приложение сам, а не специализируется на какой-то его части.
У «Нетологии» есть курсы по всем этим темам: «HTML-верстка: с нуля до первого макета» и «JavaScript-разработка: создаем интерактивные веб-страницы».
На курсе «Node, Angular и MongoDB: разработка полноценных веб-приложений» 5 опытных программистов не просто прочитают лекции, а обучат, подскажут и помогут. Их цель — чтобы вы поняли и усвоили материал. На курсе проходят эти темы:
-
Back-end разработка на JavaScript с помощью Node.js.
-
NoSQL база данных MongoDB.
-
Angular — front-end фреймворк для построение динамических интерфейсов.
-
Библиотека Express.js для организации REST API.
-
Библиотека Socket.io для организации real-time коммуникации между back-end и front-end частями веб-приложения.
-
Автоматизированное тестирование веб-приложений и TDD (Test Driven Development, разработка через тестирование).
После прохождения курса вы сможете создать собственное SPA (single page application) и получите звание junior full-stack разработчиком.
Записаться на курс по Node
Полный текст статьи читайте на Нетология