Workshop: Modularisierung pragmatisch - ein Deep Dive in Spring Modulith

Abstract

Große Anwendungen sollen oftmals modular entwickelt werden, um Ordnung und Struktur in den Code zu bekommen und Dinge wie Wartbarkeit und Testbarkeit zu garantieren. Microservices stellen dafür einen sehr konsequenten Ansatz dar, können aber auch eine hohe Komplexität mit sich bringen. “Monolithen” hingegen sind vergleichsweise bequem in der Entwicklung, stehen aber im Verdacht, schnell zu einem unübersichtlichen “Big Ball of Mud” zu werden. Diesem Problem versucht “Spring Modulith” entgegenzutreten. Damit werden Spring Boot-Anwendungen in einer gemeinsamen Codebasis entwickelt (”monolithisch”), innerhalb dieser werden aber Module definiert ("modulitisch"), deren korrekte Verwendung anhand von Architekturregeln kontinuierlich überprüft und sichergestellt wird. Außerdem erweitert Spring Modulith das Spring-eigene Eventsystem, um auch zur Laufzeit für eine Entkopplung der Module zu sorgen.

In diesem Workshop möchte ich euch mit viel Live-Coding und praxisnahen Beispielen eine Einführung in Spring Modulith geben und mit euch diskutieren, worin die Stärken und Schwächen dieses Ansatzes liegen. Dazu werden wir gemeinsam mit Hilfe von Spring Modulith eine klassischen Spring Boot modularisieren, so dass ihr auch einen Eindruck bekommt, wie eine Migration bestehender Anwendungen aussehen kann.

Der Workshop richtet sich an Entwickler:innen und Architekt:innen, Spring Boot Vorkenntnisse sind hilfreich, aber nicht notwendig.

Slides und Source Code

Slides und Material kommen nach dem Workshop

Meine Workshops zum Thema

Rund um das Thema Spring und Spring Boot biete ich auch In-House-Workshops und Schulungen an.

Mehr Informationen dazu findest du hier.

Meine Artikel zum Thema