Domain Driven Design и Clean Architecture на языке Go [Тариф Standard] [Кирилл Ветчинкин]

Bot

Администратор
Команда форума
23 Янв 2020
208,474
3,149
113

Складчина: Domain Driven Design и Clean Architecture на языке Go [Тариф Standard] [Кирилл Ветчинкин]​

2025-02-17_12-56-23.png

После прохождения курса вы сможете:
  • Кодировать Aggregate, Value Object, Entity
  • Делать интеграции по gRPC, HTTP, Kafka
  • Правильно применять паттерн Repository и Adapter
  • Писать тесты, которые легко поддерживать
  • Обеспечивать согласованность событий
  • Выстраивать архитектуру приложения с нуля
  • Публиковать Domain Event и передавать их по Kafka
  • Обосновывать применение DDD в команде
Программа курса:
Clean Architecture
Научитесь определять ключевые слои приложения в соответствии с принципами Clean Architecture, разделяя логику, зависимости и ответственность.

Value Object
Научитесь различать анемичную и богатую Domain Model, а также поймёте, как правильно реализовывать Value Object для чистого и поддерживаемого кода.

Entity
Освоите реализацию тактического паттерна Entity, научитесь создавать сущности с четко определённой бизнес-логикой и инкапсулированными данными.

Aggregate
Научитесь управлять связанными объектами через единый корневой объект, правильно определять границы агрегатов и применять бизнес-логику в одном месте.

Domain Service
Создадите и внедрите Domain Service в доменный слой приложения, выделив бизнес-логику, которая не относится напрямую к сущностям или агрегатам.

Repository
Развернете БД в Docker. Реализуете паттерн Repository, настроите работу с базой данных через EF Migrations и создадите надёжный слой данных, покрытый интеграционными тестами.

Application Layer
Реализуете Use Case’ы приложения, применяя паттерны «Command» и «Mediator», а также следуя принципу CQS (Command Query Separation).

Входящий HTTP адаптер
Реализуете входящий HTTP Adapter, связав REST API с бизнес-логикой через Use Case, и получите работающий HTTP сервер, сгенерированный из контракта OpenAPI.

Исходящий Grpc адаптер
Реализуете исходящий gRPC Adapter, создавая его по принципам портов и адаптеров в Clean Architecture, и освоите базовую настройку gRPC клиента с использованием Protobuf.

Входящий Kafka адаптер
Поднимите Kafka в Docker. Реализуете на основе контракта входящий Kafka-адаптер в соответствии с Clean Architecture, настроите его взаимодействие с Use Case.

Исходящий Kafka адаптер
Cоздадите исходящий Kafka-адаптер, научившись отправлять Domain Events и преобразовывать их в Integration Events для внешних систем.

Eventual Consistency
Реализуете паттерны Outbox и Polling Publisher. Создадите устойчивую к сбоям интеграцию с Kafka, обеспечивающую согласованность данных в распределённой системе.

Тариф Standard

  • Доступ к 12 блокам курса на 1 год
  • Чат с возможностью задавать вопросы
  • 6 живых эфира с вопросами и разборами домашек в Zoom
  • Сертификат об участии

Цена 29990 руб.
Скрытая ссылка