Multiplattform-Entwicklung für Android und Web? Kotlin macht‘s möglich!

Seite 4: Schlussbetrachtung: Web als Zielplattform in KMP

Inhaltsverzeichnis

Aktuell legt JetBrains unter anderem den Fokus auf das Komplettpaket Compose Multiplatform. Doch gerade für das Web bringt der Ansatz einer geteilten Benutzeroberfläche gravierende Einschränkungen mit sich. Benutzeroberflächen wirken oft unnatürlich, sie beeinträchtigen die Auffindbarkeit der Webseite und Developer können nicht auf bestehende Software im Webumfeld zugreifen.

Doch KMPs Flexibilität schafft Abhilfe. Entwicklerinnen und Entwickler können bei Bedarf native Webtechnologien verwenden. Die von JetBrains entwickelte Schnittstelle Compose HTML ermöglicht es, HTML/CSS-Webseiten mittels Kotlin zu entwickeln. Auf dieser Schnittstelle setzen verschiedene Frameworks auf, die die Webentwicklung mit Kotlin erleichtern. Eines der Frameworks, Kobweb, unterscheidet sich in der Handhabung kaum von Jetpack Compose. Das hat den Vorteil, dass diejenigen, die mit Android arbeiten, ohne lange Einarbeitungszeiten auch für das Web entwickeln können.

Besonders für Projekte, in denen schon eine Kotlin-Android-App existiert, ist eine Webseite auf Basis von Kotlin attraktiv. Vorhandene Android-Apps lassen sich schrittweise zu KMP-Anwendungen umbauen, und große Teile der Logik können ohne erneutes Implementieren der Web-App zugänglich gemacht werden. Das spart Entwicklungs- und Wartungskosten.

Allerdings sollten auch die Einschränkungen nicht unter den Tisch fallen. Die vorhandenen Kotlin-Frameworks für das Web sind oft kleine, von wenigen Entwicklern getragene Projekte. JetBrains pflegt die Schnittstelle zwar weiterhin, versteckt die Beschreibung von Compose HTML aber recht gut. Es bleibt abzuwarten, ob sich ein Ansatz der Webentwicklung in KMP durchsetzt.

Robin Holzwarth
ist Experte für Cross- und Multiplattform-Entwicklung bei CGI in Frankfurt. Er setzt sich intensiv mit neuen Technologien und Frameworks auseinander und testet deren Reifegrad sowie deren Einsatzfähigkeit im geschäftlichen Kontext.

(mdo)