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

Node.js - с нуля, основы и построение архитектуры приложений

Полный курс по написанию приложений на Node.js и построению масштабируемой и поддерживаемой архитектуры!
Школа
PurpleSchool
Документ об окончании
Диплом
Сложность
С нуля
Длительность
18 часов

Чему вы научитесь

  • Разрабатывать приложения на NodeJS
  • Строить архитектуру масштабируемых приложений
  • Знать внутреннее устройство NodeJS и V8
  • Понимать работу Event Loop
  • Писать на TypeScript
  • Использовать Dependecy Injection
  • Писать легко поддерживаемый код
  • Интегрироваться с внешними API
  • Писать unit и e2e тесты
  • Работать с SQL базами данных через ORM
  • Анализировать производительность и утечки памяти
  • Писать свои промежуточные обработчики
  • Реализовывать авторизацию и Guard для API

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

Введение

  • Почему NodeJS для backend?
  • Как устроен курс
  • Обзор проектов
  • Update - Обзор курсов

Настройка окружения

  • Подготовка окружения
  • Установка и версии NodeJS
  • Настройки VSCode

Начало работы с Node.js

  • Вводное видео
  • Сравнение сред выполнения JS
  • Запускаем код и REPL
  • Модули в JavaScript
  • CommonJS Modules
  • ES Modules
  • Глобальные переменные
  • Events
  • Тест - Начало работы с Node.js

Как работает Node.js?

  • Устройство Node.js
  • Event Loop
  • Таймеры
  • Пример работы event loop
  • Stack вызова
  • Worker threads
  • Измерение производительности
  • Тест - Как работает Node.js

Многопоточность

  • Использование worker threads
  • Spawn и exec
  • Fork
  • Упражнение - Производительность потоков
  • Тест - Многопоточность

Движок V8

  • Устройство V8
  • Работа с памятью

Node Package Manager

  • Вводное видео
  • Обзор NPM
  • Авторизация и профиль
  • Разбор package.json
  • Управление зависимостями
  • Тест - Node Package Manager

Приложение 1 - CLI прогноз погоды11 лекции • 1 ч 57 мин

  • Обзор приложения
  • Аргументы командной строки
  • Вывод в консоль
  • OS и path
  • Работа с файловой системой
  • Взаимодействие с API
  • Переменные окружения
  • Обработка ошибок
  • Упражнение - Завершение приложения
  • Публикация пакета в NPM
  • Npx и npm exec
  • Тест - CLI прогноз погоды


Приложение 2 - API с ExpressJS

  • Вводное видео
  • Простой http сервер
  • Переходим на express
  • Маршрутизация
  • Ответы клиенту
  • Router
  • Промежуточные обработчики
  • Тест - Промежуточные обработчики

Переход на TypeScript

  • Дополнительный курс по TypeScript
  • Почему TypeScript?
  • Начало работы с TypeScript
  • Базовые типы
  • Union типы
  • Interfaces и Types
  • Литеральные типы
  • Enum
  • Generics
  • Классы
  • Другие типы и возможности
  • Тест - TypeScript

Первый шаг к архитектуре

  • Обзор архитектуры
  • Пишем класс приложения
  • Добавляем логгер
  • Базовый класс контроллера
  • Упражнение - Контроллер пользователей
  • Обработка ошибок

Dependency Injection

  • Разбор DI и IOC
  • Декораторы
  • Metadata Reflection
  • Внедряем InversifyJS
  • Упражнение - Улучшаем DI
  • Тест - Dependency Injection

Отладка и watch

  • Eslint и prettier
  • Подключение nodemon
  • Отладка
  • Анализ памяти
  • Мониторинг производительности

Второй шаг к архитектуре

  • Улучшение архитектуры
  • Data transfer object
  • User entity
  • Сервис users
  • Middleware для роутов
  • Валидация данных

Работа с базой данных

  • Сервис конфигурации
  • Работа с prisma
  • Репозиторий users
  • Упражнение - Логин пользователя

Авторизация4

  • Работа JWT
  • Создание токена
  • Middleware для проверки jwt
  • Упражнение - Guard авторизации
  • Тест - Авторизация

Тесты

  • Виды тестирования
  • Unit тесты
  • Упражнение - Новые unit тесты
  • E2e тесты
  • Упражнение - Дописываем e2e тесты

Заключение

  • Куда двигаться дальше?

Т

ребования


  • Знание JavaScript на начальном уровне

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

Оценка курса:
Перед публикацией отзыва о курсе, он пройдет предварительную модерацию и проверку. При необходимости мы запросим дополнительную информацию по указанному email.
Логотип PurpleSchool
PurpleSchool
Оценка4.8
Цена курса
1 790 ₽  4 200 ₽
В рассрочку
-
0 отзывов о курсе