Скачать 

[НТМL Academy] Node.js и Nest.js. Микросервисная архитектура

Цена: 495 РУБ
Организатор: Robot
Список участников складчины:
  • 1. Miriam23008
  • 2. nekiytony
Robot
Robot
Складчик
  • #1

[НТМL Academy] Node.js и Nest.js. Микросервисная архитектура

Ссылка на картинку
14 марта — 15 мая 2023

Курс разработан для тех, кто хочет сменить профессию и стать высокооплачиваемым профессионалом. Он подойдёт для работающих людей, у которых мало времени.

Программа курса
Раздел 1
Введение в микросервисы
Знакомимся с микросервисной архитектурой. Узнаем о плюсах и минусах микросервисов. Разберёмся, когда выгодно применять микросервисы, а в каких случаях оставаться на монолите. Обсудим стратегии декомпозиции и разобьём приложение на отдельные сервисы. Обсудим способы взаимодействия между сервисами.

Организационные вопросы.

Обзор личных проектов.
Схема работы на курсе.
Репозиторий демо-проекта.
Монорепозитории.
Проектирование микросервисов.
Стратегия декомпозиции приложения.

Практика

Подготовка рабочего окружения.
Декомпозиция функциональности приложения.
Подготовка диаграммы архитектуры приложения.
Подготовка монорепозитория с помощью NX.
Раздел 2
Введение в Nest
Знакомимся с фреймворком Nest. Обсуждаем архитектуру и его особенности. Учимся применять CLI для автоматизации рутинных операций и генерации шаблонного кода. Знакомимся с базовыми абстракциями Nest: модули, контроллеры, сервисы и провайдеры.

Знакомство с фреймворком Nest.
Когда выгодно применять Nest.
Nest CLI.
Базовые абстракции Nest.

Практика

Модули, контроллеры, провайдеры.
Формирование спецификации в OpenAPI.
Интеграция Nest CLI с NX.
Общие библиотеки в NX.
Имплементация REST API в Nest.
Раздел 3
Nest и базы данных. MongoDB
Разбираемся как интегрировать Mongo с Nest. Описываем модели. Настраиваем сервисы и решаем задачу по сохранению пользователей в базе данных. Знакомимся с паттерном «Репозиторий».

Docker и микросервисы.
Проверка состояния сервисов в контейнерах.
Управление конфигурацией приложения.
Валидация.
Динамические модули.
Пользовательские провайдеры.
Паттерн «Репозиторий».

Практика

Установка MongoDB в Docker.
Взаимодействие с MongoDB из Nest.
Практика управления конфигурацией приложения.
joi, class-validator, class-transform.
Раздел 4
Nest и базы данных. PostgreSQL
Знакомимся с объектно-реляционной системой управления базами данных — PostgreSQL. Осваиваем азы синтаксиса SQL. Проектируем схему базы данных. Знакомимся с PrismaORM для взаимодействия с базой данных.

Реляционные базы данных.
Введение в PostgreSQL.
Когда выгодно применять PostgreSQL.
Язык структурированных запросов (SQL).
Инструменты для взаимодействия с PostgreSQL (pgAdmin, psql).
ORM для Node.js

Практика

Установка PostgreSQL в Docker.
Подключаем PrismaORM к сервису.
Prisma CLI.
Миграции в Prisma ORM.
Проектируем и генерируем модели.
Добавляем связи между таблицами.
Имплементация CRUD.
Prisma ORM: наполнение базы тестовыми данными.
Раздел 5
Валидация и авторизация
Узнаем как реализовать аутентификацию и авторизацию в приложениях Nest на основе JWT. Учимся валидировать данные от клиента. Знакомимся с новыми абстракциями Nest: пайпы (pipes), guards, interceptors. Продолжаем разбираться с Prisma ORM. Учимся ограничивать выборки, создавать постраничную пагинацию, применять сортировки.

Nest и валидация входных данных.
Знакомство с абстракциями: pipes, guards, interceptors.
JWT и Nest.
Ограничение выборки данных.

Практика

Аутентификация и авторизация.
Паттерны DTO, RDO.
Валидация данных от клиента.
Пайпы (декораторы, ValidationPipe).
Пользовательские пайпы.
Prisma ORM. Постраничная пагинация.
Prisma ORM. Фильтрация, сортировки.
Обработка параметров запроса (query string).
Guards, interceptors.
Раздел 6
Взаимодействие между микросервисами. RabbitMQ
Узнаем про разные способы (синхронные и асинхронные) взаимодействия между микросервисами. Обсудим их преимущества и недостатки. Познакомимся с новым инструментом RabbitMQ (брокер сообщений). Научимся взаимодействовать с RabbitMQ из Nest-приложений.

Раздел 7
BFF (Backend For Frontend)
Знакомимся с паттерном BFF (Backend For Frontend). Какие задачи решает паттерн, когда его необходимо применять. Обсуждаем пути к имплементации, подводные камни. Разбираемся как взаимодействовать из Node.js с почтовыми серверами, протоколом SMTP. Реализуем отправку почтовых уведомлений из Nest.
:)

Паттерн Backend For Frontend.
Слой BFF: какие задачи решает.
Инструменты для имплементации паттерна.
Несколько BFF?!

Практика

Дополнительная практика с RabbitMQ.
Разворачиваем в Docker SMTP-сервер для тестирования отправки email.
Рассылка email из Nest.
BFF.
Раздел 8
Деплой
Узнаем как подготовить и запустить приложение на настоящем сервере. Практикуемся работать с Docker. Продолжаем знакомиться с возможностями Nest: Exception Filters, загрузка файлов (на диск и в базу данных). Обсуждаем потенциальные улучшения для проекта. Задаём вектор дальнейшего развития.

Что такое деплой.
Подготовка приложения к деплою.
Публикация приложения (VDS).
Абстракции Nest: Exception Filters, Middleware.

Практика

Деплой приложения.
Exception Filters на практике.
Загрузка файлов.
Раздел 9
Финал
Подведём итоги и обсудим план дальнейшего развития.
 
Зарегистрируйтесь , чтобы посмотреть скрытый авторский контент.
Похожие складчины
  • в разделе: Программирование
  • в разделе: Программирование
  • в разделе: Программирование
  • в разделе: Программирование

Войдите или зарегистрируйтесь, чтобы комментировать и скачивать складчины!

Учетная запись позволит вам участвовать в складчинах и оставлять комментарии

Регистрация

Создайте аккаунт на форуме. Это не сложно!

Вход

Вы уже зарегистрированы? Войдите.

Сверху