Этот курс поможет вам углубиться в продвинутые практики построения модульных монолитов в .NET и научиться грамотно масштабировать архитектуру, сохраняя простоту монолита и преимущества модульного подхода.
Что даёт модульный монолит в .NET
Модульный монолит сочетает структурированность и чёткие границы модулей с простотой развертывания, характерной для монолитных систем. Такой подход делает архитектуру более гибкой, прогнозируемой и устойчивой к росту.
Ключевые преимущества
Ясные границы между модулями: минимизация зависимости и меньше риска образования «Большой Кучи Грязи».
Упрощённая разработка: единый кодовый базис, отсутствие распределённой инфраструктуры.
Высокая тестируемость: независимые модули легче покрывать автотестами.
Меньше накладных расходов: отсутствие необходимости поддерживать множество развёртываний и сервисов.
Что вы изучите в этом курсе
Программа курса продолжает развитие концепций, изученных в базовом модуле, и фокусируется на практическом применении продвинутых архитектурных подходов.
Продвинутые архитектурные паттерны
Усиление модульных границ через доменные контракты и явные зависимости.
Использование коммуникации между модулями через доменные события.
Изоляция данных и минимизация утечек доменной логики.
Работа с реальным проектом
Вы будете развивать функциональность учебного e-commerce проекта RiverBooks, внедряя новые модули и расширяя существующую бизнес-логику.
Примеры задач
Добавление новых разделов каталога с независимыми модулями.
Внедрение событийной модели для синхронизации данных между модулями.
Оптимизация архитектуры для будущего масштабирования.
Практическая ценность курса
По окончании обучения вы сможете уверенно проектировать модульные монолиты, поддерживать их чистоту и расширять функциональность без потери структурной целостности.
Кому подойдёт этот курс
Разработчикам .NET, стремящимся к более зрелой архитектуре.
Инженерам, желающим избежать хаоса в монолитах.
Командам, рассматривающим переход к микросервисам, но желающим начать с более простой архитектурной модели.
Удален по просьбе правообладателя
Урок 1.00:01:23
Welcome
Урок 2.00:01:56
What will you learn in this course?
Урок 3.00:01:20
Who is the course for and prerequisites
Урок 4.00:11:31
Introducing the Sample App
Урок 5.00:01:39
New Requirements
Урок 6.00:02:25
High Level Design Considerations
Урок 7.00:02:19
Introducing the Shared Kernel
Урок 8.00:02:24
Key Takeaways
Урок 9.00:05:47
How can modules communicate?
Урок 10.00:04:48
Direct Synchronous Calls
Урок 11.00:04:31
The Mediator Pattern
Урок 12.00:04:15
Commands, Queries, and Events
Урок 13.00:04:16
Non-Blocking Communications
Урок 14.00:02:39
The Outbox Pattern
Урок 15.00:03:03
Materialized Views
Урок 16.00:02:27
Key Takeaways
Урок 17.00:24:46
Adding an OrderProcessing Module
Урок 18.00:07:40
Adding Addresses
Урок 19.00:04:31
Implementing a Materialized View
Урок 20.00:23:22
Updating the Materialized View
Урок 21.00:01:06
Key Takeaways
Урок 22.00:13:34
Refactoring to Clean Architecture
Урок 23.00:08:07
Enforcing Architecture Rules with ArchUnit.NET
Урок 24.00:16:24
Using Chain of Responsibility for Cross-Cutting Concerns
Урок 25.00:02:15
Key Takeaways
Урок 26.00:04:39
Introducing the EmailSending Module
Урок 27.00:05:55
Sending Registration Emails via MediatR
Урок 28.00:08:53
Sending Order Confirmation Emails via Domain Events
Курсы, разработанные настоящими инженерами для реального мира. Курсы Dometrain направлены на предоставление опыта обучения, который программные инженеры могли бы получить, работая в паре с очень опытным и квалифицированным инженером в современной реальной компании.