Gatsby
ВЕЧНЫЙ
- Регистрация
- 10 Окт 2018
- Сообщения
- 53,881
- Реакции
- 279,860
[Кирилл Ветчинкин] Domain Driven Design и Clean Architecture на языке Go (2024)

За 6 недель вы научитесь строить микросервисы на Go по принципам Domain-Driven Design и Clean Architecture. Курс сочетает теорию и практику: 80% занятий - программирование и работа над реальным проектом.
Программа:
Уроки:
Скачать:

За 6 недель вы научитесь строить микросервисы на Go по принципам Domain-Driven Design и Clean Architecture. Курс сочетает теорию и практику: 80% занятий - программирование и работа над реальным проектом.
Программа:
Уроки:
- Запись вебинара 1
- Запись вебинара 2
- Рассмотреть Layered/Onion/Clean/Hexagonal Architecture и понять разницу
- Задать структуру слоев микросервиса Basket
- Изучить подходы к реализации бизнес-логики
- Разобраться, что такое Domain Model и критерии ее применения
- Понять, что не все Domain Model «честные»
- Ознакомиться с Domain Model микросервиса Basket
- Изучить паттерн Value Object
- Изучить тактический паттерн Entity
- Доработать Domain Model микросервиса Basket
- Разобраться, что такое Domain Service и когда его применять
- Изучить основные характеристики Domain Service
- Понять отличие Domain Service o Application Service
- Разобраться, как не скатиться в Anemic Domain Model из-за чрезмерного применения Domain Service
- Доработать микросервис Basket
- Разобраться, что такое Domain Service и когда его применять
- Изучить основные характеристики Domain Service
- Понять отличие Domain Service o Application Service
- Разобраться, как не скатиться в Anemic Domain Model из-за чрезмерного применения Domain Service
- Доработать микросервис Basket
- Разобраться как сохранять и восстанавливать доменные объекты
- Изучить паттерн Repository
- Изучить паттерн Unit Of Work
- Научится тестировать Repository
- Доработать микросервис Basket
- Разобраться, что такое Use Case
- Понять зону ответственности Application Layer
- Рассмотреть способы реализации Application Layer
- Изучить подход с применением Mediator
- Разобраться, что такое Command Query Separation (CQS)
- Доработать микросервис Basket
- Научится тестировать Application Layer
- Изучить входящие Adapters на примере НТТР АРІ
- Понять их связь с Application Layer
- Доработать микросервис Basket
- Научится тестировать UI (API) Layer
- Изучить синхронные исходящие Adapters на примере gRPC
- Понять из какого слоя делать синхронные обращения к внешним системам
- Познакомиться с gRPC и Protobuf
- Доработать микросервис Basket
- Изучить Input Adapters для асинхронного взаимодействия на примере Kafka
- Понять их связь с Application Layer
- Доработать микросервис Basket, добавить в него Kafka Consumer
- Изучить тактический паттерн DDD - Domain Event
- Понять отличие между Domain Event и Integration Event
- Изучить Output Adapters для асинхронного взаимодействия на примере Kafka
- Понять, как и из какого слоя отправлять сообщения в Message
- Broker
- Доработать микросервис Basket, добавить в него Kafka Producer
- Разобраться, какие бывают гарантии доставки и какая из них лучше всего подходит для нашей системы
- Понять недостатки текущей реализации публикации Domain Event
- Изучить паттерн Outbox
- Доработать микросервис Basket, реализовать в нем At-least Once гарантию доставки
Скрытое содержимое доступно для зарегистрированных пользователей!
Скачать:
Для просмотра скрытого содержимого вы должны войти или зарегистрироваться.