Nieder mit dem Spaghetti Code durch Statemachines

Conference Day - 21. Februar
 
14:45
15:15
 
Technologien und Tools
 
Seminarraum 1.812

Wer kennt das nicht? Irgendein Stück Code in unserem Softwareprojekt schreibt einen ungültigen Zustand in die Datenbank und keiner will es gewesen sein. Aber irgendwo in den Tiefen unserer Applikation wird ein Datum geändert, ohne dass man geprüft hat ob diese Änderung überhaupt erlaubt ist.
Man kann dies natürlich an jeder Stelle prüfen und gegebenenfalls verhindern. Dies ist aber fehleranfällig und schwierig zu warten. Einfacher geht es, wenn seine erlaubten Änderungen in einer State Machine hinterlegt und diese nur noch mit Eingaben füttert. Diese erlaubt zudem über eine Modellierung der Übergänge als Events eine lose Kopplung und einfache Modularisierung. Das Spring Universum bietet hierfür mit Spring Statemachine ein Framework an, welches dies in einer einfachen Art und Weise erlaubt.
Anhand eines realen Beispiels aus dem Bereich Monitoring werden wir erleben, wie die Statemachine eine prägnante und elegante Implementierung der möglichen Änderungen erlaubt. Dabei wird die Applikation zunehmend robuster gestaltet und verwaltet als Königsdisziplin einen verteilten Zustand über mehrere Instanzen hinweg.

Nicolas Byl

codecentric AG, Deutschland

Nicolas Byl sammelte bereits während des Studiums der Medizinischen Informatik erste Erfahrungen im Umfeld Java-basierter Webportale und entdeckte seine Leidenschaft für verteilte Systeme. Bei der codecentric AG beschäftigt er sich mit mit skalierbaren cloud-nativen Infrastrukturen für die Applikationsentwicklung und die Verarbeitung von Datenströmen.