Software Engineering

JavaLand 2015: Meine 3 interessantesten Vorträge aus Architektursicht

Praktisches API-Design

Im Vortrag von Kai Spichale von der addesso AG wurden die grundlegenden Punkte, welche beim API-Design zu beachten sind, sehr strukturiert aber auch sehr anschaulich dargestellt. Das Thema begegnet mir immer wieder in der Praxis. Auch in diversen literarischen Quellen (z.B. bekannte Größen wie Joshua Bloch, den ich nur empfehlen kann) werden die „common pitfalls“ beim API-Design auch sehr ausführlich behandelt.Dennoch ist es immer wieder gut, sich von Zeit zu Zeit losgelöst von den alltäglichen Problemstellungen in komprimierter Form solchen Themen zu widmen. Dazu konnte man den Vortrag sehr gut nutzen. Eine praktische Empfehlung zur Vorgehensweise beim Entwurf (immer die Nutzersicht im Blick behalten und das Feedback von möglichen Nutzer einholen!), die wichtigsten zu beachtenden Qualitätsmerkmale, sowie einige Beispiele aus dem Design-Repertoire haben das Ganze abgerundet.

Micro-Batch-Services mit Spring Boot ein Praxisbericht

Microservices waren ein großes Thema über die ganze Konferenz hinweg. Sie wurden in den Key Notes wie auch in diversen Vorträgen aufgegriffen. Spring Boot ist ein Vertreter, der die Möglichkeit bietet sehr leichtgewichtig und schnell im „Microservice-Way“ Bausteine zu entwickeln. Der Vortrag von Tobias Flohre von codecentric hat aufgezeigt, dass auf Basis von klassischen ergänzenden Technologien im Java-Umfeld (Maven, Jenkins, REST) Konfiguration und Deployment, Entwicklung und Integration wie gewohnt eingesetzt werden können. Das Spring-Typische Convention-Over-Configuration kam bei den Conditional Beans zur Geltung und es wurde deutlich wie die Entwicklung hier beschleunigt werden kann und zugleich extrem flexibel gehalten wird. Insgesamt halte ich dies für einen sehr attraktiven Ansatz für die Lösung bestimmter Anwendungsfälle, nicht nur zur Batch-Verarbeitung.

Event Sourcing FTW

Weiterhin konnte ich einem Vortrag zu einem in der klassischen Enterprise-Welt nicht all zu häufig anzutreffenden Architekturansatz mit „Event Sourcing“ lauschen. Jochen Mader von codecentric stellte dabei die Vorteile der Herangehensweise dar alle Änderungen eines Gesamtapplikationszustands in einer geordneten Sequenz von Events zu speichern. In einer sehr schönen wie auch anschaulichen Realtime-Game-Programming Demo wurde auf spaßige Art und Weise und außerdem mit aktuell extrem „heißen“ Technologien (Vert.x und Apache Kafka) das Thema „Event Sourcing“ den Teilnehmern näher gebracht. Es ist jedoch klar, dass derartige Ansätze überall dort, wo eine detaillierte Nachvollziehbarkeit der über die jeweilige Software durchgeführten Aktionen notwendig ist, bspw. im Bereich von Finanztransaktionen, ebenso zum Zuge kommen können.

> JavaLand 2015: Life is a rollercoaster
> JavaLand 2015: Von Raketenwerfern und Zapfhähnen