Visa utbildning.se som: Mobil

Vi gör just nu en uppföljande undersökning gällande hur COVID-19 har påverkat och fortsätter att påverka hur och om du väljer att gå en utbildning. Vi är så tacksamma om du vill svara på våra frågor. Gå till undersökningen.

Applied Domain-Driven Design in Java

Informator
Kort om utbildningen
3 dagar
28 450 SEK Momsfri
Nästa tillfälle: Efter överenskommelse - Distans
Onlineutbildning
   
Distans

Kursbeskrivning


Kursen lär ut ett direkt, praktiskt sätt att närma sig arkitektur inom affärslivet. Fokus ligger på att producera affärsmjukvara som är mer användbar, testbar, och lättare att förvalta och förstå än konventionella sätt att bygga applikationer.
Med hjälp av Domän-Driven Design (DDD) och Command/Query Responsibility Segregation (CQRS) ser vi hur vi kan applicera moderna lärdomar på vår design, för att kunna bygga mer hållbara, skalbara, och testbara system till lägre totalkostnad.
Istället för att lära ut ett ramverk lär kursen ut en modern arkitektur, ett antal möjliga implementationer, och understryker de vanliga fallgroparna man kan undvika på vägen.
Det här är en praktisk kurs, och vi håller oss nära programkoden hela vägen. Under kursen bygger vi successivt upp en mindre applikation från grunden. Kursen täcker även testning, hur man applicerar nyckelinsikterna från kursen på existerande system, och hur man skalar ut ett system byggt med CQRS.

Dag 1
The Challenge of "Database Driven" Software Development

Types of complexity
Scaling and consistency
Testing
Integration

Introduction to Domain Driven Design

Domains and Domain Models
Ubiquitous Language
Exercise on building a domain model

Bounded Contexts

Why boundaries matter
Context Maps
Decomposition in the domain
Composition in the UI
Exercises on boundary hunting

Commands, Queries and Events

Normalization and denormalization
Write models and read models
Events as the write-side/read-side link
Eventual consistency and its consequences
Designing commands
Designing queries
Exercise on command and query design

Message Busses

Messages as decoupling
Publish/Subscribe
Send vs. Publish
Building a simple message bus
Exercise on message bus implementation

Write Side Architecture

Command handlers
State sourcing vs. event sourcing
Introduction to aggregates
Building up aggregates from past events
Transactional safety
Exercise on command handlers and aggregates

Dag 2
BDD Style Testing

Introduction to BDD
Commands, Events and BDD
Building a simple test framework
Exercise on BDD

Event Stores

Existing options
Building an event store on top of an RDBMS
Implementing a repository using an event store
Advantages of freeing aggregate representation from persistence
Optimizations using snapshots
Exercise on building an event store

Advanced Aggregate Design

Finding aggregate boundaries
Coping with relationships
Exercise on aggregate design

Building Read Sides

Overall approach
Relational DB read sides
NoSQL read sides
Other options
Re-building and introducing new read sides
Exercise on building read sides

Dag 3
Sagas

What is a saga?
Different types of saga
Handling saga state
Building a simple saga framework
Exercise on sagas

Evolving a System

Refining domain models
Handling changes to commands
Event versioning
Handling event upgrade
Exercise on event upgrading

CQRS, DDD and Existing Codebases

Introducing bounded contexts to existing systems
Separating commands and queries
Migrating towards event sourcing

Scaling out

Using the read/write separation to scale
Scaling write sides by bounded context and by aggregate
Scaling within an aggregate
Message distribution and reliability
Message queues and ESBs

Other Opportunities

Parallel development and outsourcing
Recreating previous states for debugging

Hur påverkar COVID-19 denna utbildning?

Vi på utbildning.se är övertygade om att kunskap driver människor och organisationer framåt. Det gör även de arrangörer vi samarbetar med.
Många utbildningar ställs exempelvis om från klassrums- till distansutbildning.

För att ta reda på om en utbildning påverkas med anledning av COVID-19, kontakta gärna arrangören.

Intresseanmälan

Fyll i formuläret för att få mer information om Applied Domain-Driven Design in Java, direkt från arrangören. Det är gratis och inte bindande!

Informator

Informator

Utbildningsutbud

Informator är utbildningsföretaget som stärker din konkurrenskraft genom att underhålla, uppdatera och tillföra relevant kunskap inom IT och management där och när du behöver det. Vi har vuxit tillsammans med svensk mjukvaruindustris ledande företag och utbildat utvecklare, tekniker, projektledare och chefer sedan...


Läs mer om Informator och visa alla utbildningar.

Kontaktuppgifter

Informator

Karlavägen 108
115 26 Stockholm

 Visa telefonnummer

Recensioner
Kursrecensioner
Bli den första att recensera Applied Domain-Driven Design in Java!

Arrangörsrecensioner
(4,5)
Baseras på 712 recensioner.
Alla recensioner för arrangören

Liknande utbildningar