К содержанию
Первый Коммит

Серверная разработкаБазовый

Курс Node.js с нуля

Серверный JavaScript от событийного цикла до продакшна: Express 5, MongoDB и PostgreSQL, аутентификация, тесты, кеш и Docker.

Материалы подготовлены с применением технологий искусственного интеллекта под редакцией автора, версии используемых библиотек и инструментов проверены и обновлены. Подробнее в оферте.

Модулей
16
Ак. часов
144
Разделов
208

Что нужно знать заранее. базовые знания JavaScript и работа в терминале; установка Node.js разбирается в модуле 1.

1 600 ₽

Весь курс навсегда, вместе с обновлениями. Первые 2 модуля открыты бесплатно и без регистрации.

Купить курс
Обложка курса Node.js

Модули курса

  1. 1Введение в Node.jsБесплатноNode.js — это среда выполнения (runtime) JavaScript вне браузера. До появления Node.js в 2009 году JavaScript мог работать только внутри браузера: управлять…Что такое Node.jsV8Событийный циклУстановкаnvmnpmПервый скриптREPL
  2. 2Модули и npmБесплатноБез модулей весь код приложения находился бы в одном файле. Для маленького скрипта это допустимо, но реальные проекты содержат тысячи строк кода…CommonJSES Modulesrequireimport/exportpackage.jsonnpmnpxЗависимости
  3. 3Файловая система (fs)Модуль fs (file system) — один из наиболее часто используемых встроенных модулей Node.js…ЧтениеЗаписьПотокиДиректорииpathНаблюдениеПрактические задачи
  4. 4HTTP-сервер на чистом Node.jsПрежде чем писать сервер, важно понять протокол HTTP. При открытии сайта в браузере происходит следующее:Модуль httpЗапросы и ответыРоутингСтатические файлыJSON APIQuery/Body
  5. 5Express.js — основыВ предыдущем модуле мы создали HTTP-сервер на чистом Node.js. Это работает, но для реального проекта неудобно: приходится вручную парсить URL и тело запроса,…УстановкаРоутингПараметрыMiddlewareСтатикаОбработка ошибокRouter
  6. 6MongoDB и MongooseMongoDB — документоориентированная NoSQL-база данных. В отличие от реляционных баз (PostgreSQL, MySQL), где данные хранятся в таблицах со строгой структурой,…MongoDBMongooseСхемыМоделиCRUDВалидацияСвязиИндексы
  7. 7PostgreSQL и Prisma ORMВ предыдущем модуле мы изучили MongoDB — NoSQL-базу данных. Теперь рассмотрим реляционную базу PostgreSQL. Выбор между ними зависит от задачи:PostgreSQLPrismaСхемаМиграцииCRUDСвязиФильтрацияТранзакции
  8. 8Аутентификация и авторизацияЭти два термина часто путают, хотя обозначают они разные понятия:bcryptJWTРегистрацияЛогинMiddleware authРолиRefresh-токеныCookies
  9. 9Валидация и обработка ошибокВалидация — это проверка входных данных перед их обработкой. Без валидации приложение уязвимо: пользователь может отправить пустое имя, невалидный email, строку…JoiZodКастомные ошибкиЦентрализованная обработкаЛогирование
  10. 10Загрузка файлов и отправка emailВ веб-приложениях часто нужно загружать файлы: аватары пользователей, фотографии для постов, документы…MulterЗагрузка изображенийИзменение размераОблачное хранилищеNodemailerШаблоны писем
  11. 11WebSocket и реалтаймПротокол HTTP работает по модели «запрос — ответ»: клиент отправляет запрос, сервер отвечает, соединение закрывается…WebSocketSocket.IOКомнатыЧатУведомленияSSEАутентификация WS
  12. 12ТестированиеТесты — это код, который проверяет правильность работы основного кода. Без тестов каждое изменение может сломать существующую функциональность, и узнать об этом…Виды тестовNode test runnerSupertestМокиПокрытиеVitest
  13. 13БезопасностьБезопасность — не пожелание, а обязательное требование для любого приложения, доступного из интернета. Основные угрозы:HelmetCORSRate LimitingXSSSQL/NoSQL InjectionCSRFHTTPSПеременные окружения
  14. 14Производительность и кешированиеRedis — это база данных в оперативной памяти (in-memory). Она хранит данные в формате «ключ — значение» и работает очень быстро — десятки тысяч операций в секунду…RedisКешированиеСессииОчереди задачClusterPM2Профилирование
  15. 15Деплой и DockerDocker — инструмент контейнеризации, который упаковывает приложение со всеми зависимостями в изолированный контейнер…DockerDockerfiledocker-composeCI/CDGitHub ActionsNginxSSLVPS
  16. 16Итоговый проект — REST APIИтоговый проект объединяет все знания из предыдущих 15 модулей в одно полноценное приложение. Правильная структура проекта — основа поддерживаемости…АрхитектураСтруктураВсе модули вместеДокументацияSwaggerДеплой

Частые вопросы о курсе

Что входит в курс Node.js?
16 модулей, 144 ак. часа, 208 разделов теории. Каждый модуль — полноценное занятие: теория с разбором «почему», листинги с кнопкой копирования, практика и домашнее задание.
Что открыто бесплатно?
Первые 2 модуля курса открыты всем без регистрации: можно прочитать теорию, повторить листинги и сделать практику, прежде чем решать о покупке.
Сколько стоит доступ и надолго ли он?
1 600 ₽ за весь курс. Оплата разовая, без подписки; доступ ко всем модулям остаётся навсегда и включает будущие обновления курса.
Что нужно знать заранее?
базовые знания JavaScript и работа в терминале; установка Node.js разбирается в модуле 1.

Другие курсы

← Ко всем курсам

Введите запрос: название модуля, тема или раздел.

Стрелки — выбор, Enter — открыть. Ищет по названиям модулей, темам и разделам.