Все IT и digital-события
18+
Платные
Онлайн

Онлайн-курс "Domain Driven Design и Clean Architecture на практике" (с примерами на языке C#)

Сейчас событие просматривают 5 человек
27.01.2025 19:00 ПН
Онлайн
Стоимость билета
от 29 900₽
Зарегистрироваться
0
Онлайн-курс "Domain Driven Design и Clean Architecture на практике" (с примерами на языке C#)

О курсе

DDD и Clean Architecture помогают проектировать гибкие и адаптивные приложения, способные оперативно реагировать на изменение требований.

  • С нуля создадим сервис с использованием DDD, Clean Architecture и CQS
  • Спикер внедрял DDD в компаниях разных отраслей: Мегафон, БКС Брокер, СберМаркет
  • 12 модулей и 6 Q&A-сессий в Zoom
  • Поддержка в чате
  • 12 практических заданий на примере проекта, приближенного к реальным условиям

Курс ведёт опытный разработчик

Кирилл Ветчинкин — практикует DDD с 2019 года.

  • Principal Engineer в Купер (ex СберМаркет)
  • Пишет код на языке программирования C# с 2002 года
  • В настоящее время использует язык программирования C# и язык программирования Go
  • Разработал архитектурный шаблон микросервиса с применением DDD в "Купер" (ex СберМаркет)
  • Реализовал ряд высоконагруженных систем на микросервисной архитектуре для Мегафон, Теле2, БКС Брокер, СберМаркет
  • Постоянный спикер крупных ИТ-конференций по разработке и архитектуре ПО: ArchDays, Highload++, Podlodka, РИТ, DevOpsDays, DotNext, DevOps Pro, MskDotNet Meetup и другие
  • Имеет степень MBA в ИТ (ВШЭ)

Формат

  • 12 видеоуроков по 30-60 минут
  • 12 практических заданий по программированию
  • Проверка кода и подробная обратная связь
  • Поддержка в чате от автора курса
  • 6 Q&A-сессий в Zoom для разбора домашних заданий и вопросов

Кому подойдет

Младшим специалистам, специалистам среднего уровня и старшим специалистам‑разработчикам — тем, кто хочет систематизировать знания и внедрить современные практики DDD и Clean Architecture. Программа ориентирована на практику и повышает профессиональные навыки.

Кому не подойдет

Аналитикам и менеджерам, а также специалистам, не занимающимся программированием.

Программа

1. Clean Architecture

  • Dependency Inversion Principle
  • Сравнение подходов Hexagonal / Onion / Clean
  • Определим роль слоев приложения
  • Проектирование структуры микросервиса по принципам Clean Architecture

2. Value Object

  • Подходы к реализации Application Core
  • Domain Layer
  • Анемичная и богатая Domain Model: отличия и применение
  • Реализация Value Object (объект значения)

3. Entity

  • Реализация Entity (сущность)
  • Признаки Entity
  • Инварианты домена
  • Организация хранения в базе данных

4. Aggregate

  • Реализация Aggregate (агрегат)
  • Строгая согласованность
  • Типичная ловушка «реального мира»
  • Выбор границ агрегата

5. Domain Service

  • Реализация Domain Service (сервис предметной области)
  • Цели и назначение
  • Отличие от Application Service
  • Популярные ошибки реализации

6. Repository

  • Создание базы данных с помощью EF Migrations
  • Типовые ошибки при реализации Repository
  • Пример реализации
  • Покрытие логики интеграционными тестами

7. Application Layer

  • Ограничения Application Service
  • Шаблоны Command и Mediator
  • Подход CQS
  • Пример реализации

8. Входящий HTTP адаптер

  • Contract-first подход
  • Проектирование методов программного интерфейса (API) в архитектурном стиле REST с помощью Swagger Open API
  • Связь обработчика HTTP и Use Case
  • Реализация HTTP-сервера

9. Исходящий Grpc адаптер

  • Знакомство с gRPC и Protobuf
  • Формирование контракта в Protobuf
  • Определение слоя для внешних вызовов
  • Реализация клиента gRPC

10. Входящий Kafka адаптер

  • Знакомство с Kafka
  • Проектирование контракта
  • Связь потребителя Kafka и Use Case
  • Создание потребителя Kafka

11. Исходящий Kafka адаптер

  • Domain Events и Integration Events
  • Проектирование контракта
  • Определение слоя для отправки событий в Kafka
  • Создание издателя Kafka

12. Eventual Consistency

  • Виды гарантий доставки
  • Обеспечение согласованности в распределенных системах
  • Реализация шаблона Outbox
  • Итоговый запуск проекта и отладка

Если нужна консультация - просто напишите:

Telegram: @kirill_vet

Похожие мероприятия
Ссылка скопирована