phone_picture

Цель курса

Освоить удобный и ультрасовременный подход к разработке на Node и TypeScript на основе Fastify.

Правильная реализация подхода documentation first гарантирует наличие одного источника истины для валидации, вывода типов и сериализации. Попробуйте, вам понравится!

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

Курс проводится первый раз, возможны перестановки тем по урокам

30 июня, 20:00 — урок 1

  • Философия подхода documentation first
  • Различия OpenApi и JsonSchema
  • Версии JsonSchema и совместимость с OpenApi
  • Вывод typescript типов из JsonSchema
  • Тренировка по созданию json-схем
  • Повторное использование готовых схем

3 июля, 20:00 — урок 2

  • Знакомство с Ajv-валидатором
  • Настройка Ajv под новшества openapi
  • Начало работы с Fastify
  • Базовые настройки и простой роутинг
  • Fastify и TypeProvider
  • Основы валидации и сериализации

7 июля, 20:00 — урок 3

  • Погружение в Fastify
  • Middleware, hooks и обработка ошибок
  • Обзор популярных плагинов
  • Подключение Swagger и Swagger UI
  • Примеры создания своих плагинов
  • Практика в рамках простой архитектуры

14 июля, 20:00 — урок 4

  • Начало работа с БД
  • Выбор ORM в зависимости от проекта
  • Prisma vs TypeOrm vs Drizzle
  • Упор на скорость, установка DrizzleORM
  • Основы чистого SQL
  • ORM как Query Builder

17 июля, 20:00 — урок 5

  • Тренировка с Drizzle ORM
  • Схемы и миграции
  • Изучение типичных запросов
  • Связи между сущностями
  • Drizzle ORM и TypeScript

21 июля, 20:00 — урок 6

  • Создание архитектурной обёртки
  • Fastify и dependency injection
  • Простой DI глобальных сервисов
  • Идеи DI в request scope
  • AsyncLocalStorage и fastify-request-context

28 июля, 20:00 — урок 7

  • Тренировка в рамках получившегося стека
  • Кастомизация ошибок валидации
  • Асинхронная валидация: unique, exists и т.п.
  • Пользователи и авторизация
  • Access и Refresh токены

31 июля, 20:00 — урок 8

  • Подведение итогов
  • Простое развёртывание на сервера
  • Мысли и теории про микросервисы
  • Взаимодействие: GRPC vs Rest
  • Упрощённый микросервисный пример

Преподаватель курса

Дмитрий Лаврик

Профессиональный веб-разработчик

Опыт работы в сфере разработки сайтов более 15 лет. Ориентируется во всех вопросах создания сайтов, от вёрстки до backend-а.

Опытный преподаватель

Начиная с 2011 года, под его руководством тысячи учеников прошли путь от новичков до успешных веб-программистов. Если вы ещё не знакомы с Дмитрием, рекомендуем заглянуть на его youtube-канал, где вы найдете много полезных видео и сможете узнать стиль преподавания Дмитрия.

Дмитрий Лаврик

Что вы получите

8 онлайн уроков

1-2 раза в неделю по понедельникам и четвергам в 20:00 МСК. Продолжительность каждого занятия около двух часов. На уроках разбираются домашние работы учеников и новый материал.

Видеозаписи всех уроков

Если вы по какой-то причине не смогли посетить урок, не переживайте, спустя пару часов после окончания занятия он доступен в записи в хорошем качестве :)

Материалы и исходники

Все примеры, которые мы рассматриваем на уроках, вы получаете в архиве. Таким образом, даже не написав ни строчки кода, вы получаете набор готовых решений, сделанных на уроке.

Домашние задания

После каждого урока выдаётся домашнее задание, которое нужно сделать для закрепления пройденного материала. Плохие оценки не ставим – только конструктивные комментарии :)

Обратную связь от преподавателя

Домашнее задание каждого ученика разбирается на уроке. Поэтому максимальный размер группы ограничен, чтобы каждый мог получить комментарии по своей работе.

Доступ в закрытую группу

Во время прохождения курса все участники тусуются в рамках закрытой площадки, где помогают друг другу, а также задают вопросы преподавателю и получают ответы на них.

Обзор курса

Внимание! Для прохождения данного курса пригодятся базовые знания в node и typescript.

Если вы хотите подробнее ознакомиться с идеями курса,

посмотрите видео, расположенное рядом

В нём рассказывается о философии выбраного подхода, преимуществах Fastify, необходимых начальных знаниях и т.п.

Запись на курс

Максимальная скидка на раннюю запись!

21 000 руб. 14 700 руб.

 
Способы оплаты

Часто задаваемые вопросы

Какие начальные знания необходимы

Уверенное владение основами NodeJS и TypeScript, при этом сложный TS необязателен – головоломные типы изобретать не придётся. Будут полезными и знания основ SQL.

Почему в программе Drizzle ORM

Fastify нацелен на производительность. Drizzle ORM тоже. Такой стек подойдёт даже для нагруженных систем и микросервисов. Если любите что-то другое, например, Prisma, то подменить ORM получится без проблем.

Нужно ли сначала проходить Node Level 1

Если вы ориентируетесь в тех темах, которые прописаны в программе первого уровня, то не обязательно.

Реально изучаем и создаём микросервисы

Не совсем. Мы просто изучаем стек технологий, который хорошо подойдёт как для монолита, так и для микросервисов.

Будут ли записи уроков

Да, конечно. Видеозапись и материалы выкладываются в течение нескольких часов после окончания урока.

Почему уроки идут с перерывами

Чтобы дать дополнительное время на осмысление материала и выполнение домашнего задания.