User Input Validierung mit Kotlin Multiplatform

In web-basierten Client-Server-Architekturen muss die Validierung von Nutzereingaben typischerweise zweimal erfolgen: einmal im Browser als direktes Feedback für die Nutzer:innen bei der Eingabe und einmal im Backend, um die Gültigkeit der Daten zu prüfen bevor sie gespeichert werden. Außerdem müssen hier sicherheits-relevante Prüfungen ablaufen, damit z.B. keine unerlaubten Steuerzeichen in der Datenbank landen.

Dies zieht oft eine komplizierte Validierungslogik nach sich, die von den Frontend- als auch den Backend-Entwickler:innen abgestimmt werden muss, wenn sich die fachliche Logik ändert.
Wenn hier Inkonsitenzen entstehen und das Frontend anders validiert als das Backend, treten unschöne Seiteneffekte auf.
Das Projekt "Kotlin Multiplatform", welches in den meisten Fällen zur Entwicklung von mobilen Apps eingesetzt wird, kann hier jedoch Abhilfe schaffen.
Kotlin wird zunehmend als Ersatz für Java im Backend verwendet, da es neuere Features und Programmierstile mitbringt, gleichzeitig aber voll mit Java und Java-Frameworks kompatibel ist.

Dieser Vortrag zeigt, wie man Objektvalidierung / Domänenlogik an einem zentralen Punkt im Kotlin-Backend schreiben und testen kann und diese validierbaren Objekte dann "nur noch ins Frontend exportiert". In den dortigen Frameworks (wie z.B. Angular) können die Validierungen dann einfach eingebunden und verwendet werden, ohne erneutes Testen.

Teaser: In web-basierten Applikationen muss die Validierung von Nutzereingaben zweimal erfolgen: im Browser als Feedback für die Nutzer:innen und im Backend, damit die Daten nur validiert in der Datenbank landen. Die Validierungslogik muss stets deckungsgleich sein, was wiederum viel redundante Arbeit mit sich bringt. Objekte nur im Backend validieren und die Logik dann einfach "ins Frontend exportieren" – das geht? Daniel Mader zeigt an einem Praxisbeispiel wie das mit Kotlin Multiplatform möglich ist.

 

Referent: Daniel Mader, Novatec Consulting GmbH

Daniel Mader ist als Consultant und Softwareentwickler für die Novatec Consulting GmbH tätig. Neben der agilen Entwicklung von Cloud-nativen Java/Kotlin-Applikationen auf Basis von Spring, fühlt er sich auch bei der Entwicklung von Frontends mit Angular und React wohl. Als Mitglied der OWASP sind für ihn außerdem sicherheitsrelevante Aspekte von Web-Anwendungen von großem Interesse.

Key Facts

Themengebiet: Agile Testing

Datum und Uhrzeit: 03. November 2021, 14:00 bis 14:45

Raum: Paris

Copyright © 2021 HLMC Events GmbH