DDD for Modern Architectures and a Reactive DDD Event
Instructor: Vaughn Vernon
Systems today are far more likely to be distributed, especially due to the ever-increasing popularity of the cloud and microservices. They are also progressively asynchronous, message- and event-driven, exhibiting reactive properties. In this 2-day course you will learn how to employ modern architectures and the use of lightweight tools to manage complexity, along with advanced Domain-Driven Design.
Explore the foundational architectures on which today’s software is reliably built and the advanced architecture patterns that are necessary for distributed, reactive microservices software. In this 2-day course, you’ll get hands-on experience with the essential strategic and tactical tools for Domain-Driven Design and the architectures and patterns used to develop contemporary advanced systems.
You will learn: essential DDD; architectures and architecture patterns; lightweight documentation and diagramming tools; implementing code for DDD Bounded Contexts. Here is what to expect:
- Essential Domain-Driven Design
- Ports and Adapters (Hexagonal, Clean)
- Commands, Events, and Queries
- Message- and Event-Driven Architectures
- REST as Messaging
- CQRS (Command-Query Responsibility Segregation)
- Event Sourcing
- Process Choreography and Orchestration
- Process Managers
- Messaging with the Actor Model
- Integration and Collaboration with Bounded Contexts
- Modeling Uncertainty
Bonus 1-day Event at no extra cost to attendees
Reactive DDD with the vlingo/PLATFORM
Domain-Driven Design with Cores
This workshop introduces Reactive architecture and programming along with the open source vlingo/PLATFORM to leverage using Domain-Driven Design with Reactive properties. Adopt this very lightweight JVM-based microservices toolkit to implement with Java and Kotlin and other modern languages to develop cloud-native services and apps on small devices such as Android mobile and IoT for business differentiation.
This intensive, and hands-on workshop first builds your foundation with the Actor Model using vlingo/actors. This workshop then expands your understanding with advanced application and system design approaches, using Domain-Driven Design and Microservices. The workshop takes you much deeper into more advanced topics of Web applications with vlingo/http, using vlingo/symbio for a range of persistence options such as object storage, CQRS, and Event Sourcing, and how to leverage vlingo/lattice over vlingo/cluster for highly available distributed systems. This is a hands-on workshop. There are many practical exercises and students are strongly encouraged to engage using the vlingo/PLATFORM components.
Foundational Actor Model and DDD
The workshop builds your foundation with actors using vlingo/actors. You will learn the Actor Model, DDD, and how to solve common distributed computing challenges using the vlingo/PLATFORM components’ API.
- Reactive—Async Everything!
- Fundamental Domain-Driven Design
- Using the Actor Model
- Up and Running with vlingo/actors
- Modeling Uncertainty
- Develop Software Like You Mean It
- Message- and Event-Driven Integration and Collaboration
- Reactive REST with vlingo/http
- Reactive Persistence with vlingo/symbio
- Reactive Business Components with vlingo/lattice
- Messaging Between Microservices with vlingo/lattice
- Long-Running Processes and Sagas with vlingo/lattice
- Highly Available Microservices with vlingo/cluster