Логотип КурсесТоп

Backend-разработка на Node.js

Станьте fullstack-разработчиком, зная только JavaScript. Технология Node.js позволит вам разрабатывать backend для веб-приложений самостоятельно, а язык программирования TypeScript расширит возможности JavaScript для ваших проектов
Школа
Нетология
Документ об окончании
Диплом
Сложность
С нуля
Длительность
5 месяцев
портфолио

Если знакомы с JavaScript, курс поможет вам

  • Стать fullstack-разработчиком
  • Добавите к знаниям frontend-разработки навыки backend, не изучая второй язык, а освоив только одну технологию.
  • Перейти на middle-уровень
  • Изучите новые технологии, расширите стек навыков и сможете стать middle-разработчиком.
  • Больше зарабатывать
  • Сможете работать с более сложными проектами и претендовать на вакансии с большей зарплатой.

Программа курса

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

Вы познакомитесь с рабочей средой Node.js и инструментами разработки. По итогам модуля вы создадите консольное приложение для обработки файлов с помощью потоков.

  • Особенности работы с Node.js, установка и настройка рабочей среды
  • Менеджер пакетов
  • Работа с консолью, циклы событий, асинхронность
  • Модули Node.js и инструменты разработки
  • Стримы (потоки)
  • js HTTP-module. HTTP-stream. Встроенный низкоуровневый веб-сервер

Библиотека Express.js

Познакомитесь с библиотекой Express.js, развернёте приложение на сервере, освоите Docker, подключите базу данных MongoDB для хранения данных и Passport.js для аутентификации пользователей, настроите обмен данными между клиентом и сервером — с этим помогут websocket и socket.io.

  • Библиотеки Node.js для веб-разработки. Express.js
  • Паттерн «цепочка обязанностей»
  • Шаблонизаторы. Отрисовка контента (рендер на сервере). Библиотеки Express.js
  • Развёртывание приложения на сервере (heroku)
  • Docker, установка и настройка. Контейнеризация приложения
  • Сравнение реляционных и объектно-ориентированных БД
  • Запуск локальной MongoDB в Docker. Подключение MongoDB в Тode.js-приложение
  • Аутентификация. Passport.js
  • Realtime взаимодействие с сервером, протокол websocket. Библиотеки ws и socket.io

Приложение для доставки

Вы создадите сайт доставки и чат для общения двух людей. Для создания сайта вы разработаете API для аутентификации, управления и просмотра объявлений и websocket-чат. В проекте вы задействуете технологии Node.js, Express.js, Passport.js, MongoDB и Websocket.

TypeScript

Вы освоите статическую типизацию для js кода с помощью TypeScript. На практике будете использовать богатую систему типов, декораторы, enum-ы и другие возможности языка TypeScript. Научитесь настраивать проект с помощью tsconfig.json, использовать eslint для проверки стиля и качества ts-кода. Воспользуетесь всеми возможностями TypeScript для написания надёжных приложений на Node.js.

  • js и TypeScript (настройка окружения, возможности)
  • Динамическая типизация JavaScript vs статическая типизация TypeScript. Инструментарий tsc, tslint/eslint. Настройка проекта
  • Система типов TypeScript. Основные принципы ООП. SOLID
  • Библиотека Reflect-metadata. Loc-контейнеры: type-di, inversify
  • Перенос и интеграция JS-проекта на примере пройденных материалов
  • Организация проекта и кодовой базы. Разделение приложения на слои

Nest.js

Вы изучите фреймворк Nest.js и основные понятия, создадите проект на Node.js, реализуете функциональность из блока TypeScript на модули Nest.js, подключите базы данных (модуль для MongoDB). Научитесь подключать аутентификацию по модулям Nest.js и добавите тестирование кода в свой проект.

  • Основные понятия: модули, контроллеры, сервисы. MVC-архитектура
  • Погружение в Nest.js: инверсия зависимостей, провайдеры, Middleware
  • Подключение базы данных к Nest.js — модулю для MongoDB. Сервисы, репозитории, примеры
  • Потоки RxJs
  • Валидация и обработка ошибок. Interceptors, pipes
  • Аутентификация в Nest.js, Passport.js. Guards
  • Тестирование. Библиотека JEST. Unit-тесты, интеграционные и приёмочные тесты
  • Вебсокеты в Nest.js

Firebase

Cоздадите аккаунт firebase, внедрите функциональность проекта «Книги» на cloud-функции и подключите облачную базу данных для хранения данных из cloud-функций.

  • Cloud Firestore, Realtime Database
  • Cloud Functions, Hosting
  • Firebase Authentication

Итоговый проект — агрегатор отелей

В конце обучения вы создадите сайт-агрегатор для просмотра и бронирования отелей. Для этого вы разработаете публичный API, API пользователя, API администратора и чат для консультанта. В проекте вы задействуете технологии Node.js, Nest.js, MongoDB и Websocket.

Ключевые навыки

Что умею делать

  • Работать с инструментами разработки Node.js
  • Использовать библиотеки и фреймворки Node.js: Express.js, Nest.js
  • Писать на TypeScript и использовать инструменты tsc, tslint/eslint
  • Подключать и использовать в проекте базы данных (MongoDB)
  • Настраивать обмен данными между клиентом и сервером (WebSocket)
  • Работать с ПО для автоматизации развёртывания и управления приложениями (Docker)
  • Настраивать аутентификацию с помощью Passport.js
  • Писать unit-тесты
  • Использовать Google Firebase

Оставить отзыв

Оценка курса:
Перед публикацией отзыва о курсе, он пройдет предварительную модерацию и проверку. При необходимости мы запросим дополнительную информацию по указанному email.
Логотип Нетология
Нетология
Оценка4.9
Цена курса
24 850 ₽  10 650 ₽
В рассрочку
2 070 ₽
0 отзывов о курсе