5 days course (8h/day). In this course you will learn how to code microservices in .NET: the main patterns, the main architectures, and how to orgainze your teams.
Prerequisites: Data layer, Introduction to Microservices and Kubernetes
Topics
- Fundamentals of Domain Driven Design
- Layer and Onion architectures
- Domain Layer and Aggregates
- Value types
- Command Query Responsibility Segregation (CQRS)
- Repository and Unit of Work
-
Application Layer with Query, Command handlers and Event handlers
- DTO and ViewModels
- How to use reflection to discover Queries, Command handlers, Event handlers, and Repositories
-
Communication between microservices
- Theoretical foundations
- Message brokers: RabbitMq and Azure Service Bus
- Introduction to RabbitMq
- Resilience: Polly
-
Implementing a Worker Microservice with .NET 6 and RabbitMq
- Host, Dependency Injection and Hosted Services
- Binary Serialization and ProtoBuf
- Using the .NET Client for RabbitMq
- Complete example: Calculation of daily turnover
-
Implementing a Microservice Frontend with ASP.NET Core MVC 6
- Frontends and micro-frontends
- General architecture
- The data layer
- The domain layer interface
- The application layer