Aus Alt mach Neu

Konzepte wie Domain-Driven Design, eventgetriebene Architekturen, Command/Query Responsibility Segregation (CQRS) und Event Sourcing haben in letzter Zeit viele Diskussionen ausgelöst. Es scheint fast, dass man kein neues Projekt anfangen darf, ohne zumindest ein paar von diesen Buzzwords mit einzubauen. Oder gleich das ganze Paket? Schließlich hängen die ganzen Konzepte ja sehr eng zusammen.

Nach einer kompakten Einführung in den praktischen Nutzen und die Anwendungsgebiete von DDD, Events und CQRS sehen wir uns jenseits von Buzzwords und technischem Overkill an, wo und wie man die genannten Konzepte in aktuellen Projekten und für Legacy-Anwendungen richtig dosiert und gewinnbringend einsetzen kann.

Wir lernen die wichtigsten Prinzipien des Domain-Driven Design als eine logische Fortsetzung von OOP und agilen Methoden kennen und diskutieren praxiserprobte Lösungsansätze für die synchrone und asynchrone Verarbeitung von Events und die Anwendung von CQRS-Prinzipien, mit denen Erweiterungen und Änderungen an vorhandenen Anwendungen viel einfacher umsetzbar sind, als sie das bisher waren.

Wir zeigen Codebeispiele in PHP, die aber auch für Entwickler mit Kenntnissen in anderen Programmiersprachen gut zugänglich sind. Da die zur Verfügung stehende Zeit beschränkt ist, ist in diesem Workshop keine Programmierung am eigenen Rechner vorgesehen.

Lernziele

Sie verstehen aktuelle Trends wie DDD, CQRS und Event Sourcing und können diese in Legacy-Projekten gewinnbringend einsetzen.

Zielgruppe

Diese Schulung richtet sich an fortgeschrittene Entwickler, die umfangreiche Anwendungen betreuen und weiterentwickeln. Um die gezeigten Codebeispiele zu verstehen, sind Kenntnisse in objektorientierter Programmierung in PHP oder einer ähnlichen Programmiersprache sinnvoll.

Voraussetzungen

Wir zeigen Codebeispiele in PHP, die aber auch für Entwickler mit Kenntnissen in anderen Programmiersprachen gut zugänglich sind. Da die zur Verfügung stehende Zeit beschränkt ist, haben wir in diesem Workshop keine Programmierung am eigenen Rechner vorgesehen.

Agenda

09:00 – 09:15 Begrüßung, Vorstellung und Sammeln der Erwartungen
09:15 – 10:00 DDD kompakt, Events als First Class Citiziens
10:00 – 10:30 Eventgetriebene Systeme
10:30 – 10:45 Pause
10:45 – 11:30 Synchrone und asynchrone Eventverarbeitung
11:30 – 12:00 Legacy-Systeme und Events
12:00 – 13:00 Mittagspause
13:00 – 13:30 CQRS kompakt
13:00 – 14:15 Event Sourcing kompakt
14:15 – 15:00 Projektionen und Legacy-Views
15:00 – 15:15 Pause
15:15 – 16:15 Event Sourced Aggregates und Legacy-Datenbanken
16:15 – 16:45 Zusammenfassung, Ausblick, Fragen
16:45 – 17:00 Wrap-Up und Feedback