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

Курс

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

2 370 ₽

О курсе

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