Domain Driven Design Training
Duration : 2 Days
Date : 01, 02 Jun 2023
Target Audience: Java Developers
Prerequisite for Domain Driven Design Training
- Decent exposure to Java programming
Lab Setup:
- Decent Windows/Linux/Mac with 4GB RAM
- Java 8+
- Java IDE like Eclips
- Proxy-free internet connectivity (MUST)
Approach:
- Participants will be divided into groups of 4-5 people to do problem solving & hands-on
- First day would be at slow pace to get everyone on to the same page
- Subsequent days would be at a faster pace
- Concepts would be discussed and worked-on before attempting the comprehensive case-studies
Course Contents
DAY – 1
- Introduction to Domain Driven Design (DDD)
- Why apply DDD?
- Concepts of DDD
- Context
- Domain
- Model
- Ubiquitous Language
- Principles behind DDD
- Building Blocks of DDD
- The Onion Model
- Domain Model
- Domain Services
- Application Services
- Infrastructure
- DDD Patterns
- Entity
- Aggregate
- Value Object
- Repository
- Data Transfer Object
- Domain Service
- Application Service
- Domain Event
DAY – 2
- Strategic DDD
- Strategic Design
- Bounded Context
- Continuous Integration
- Context Map
- Breaking the Domain into Sub-domains
- Sub-domain Vs Bounded Context
- Microservices
- Service Integration
- Patterns
- Saga
- Orchestration
- Choreography
- CQRS
- Domain Event
- Event Sourcing
- Case Study