Android-Oberflächen reaktiv programmieren mit Jetpack Compose

Die Entwicklung von grafischen Oberflächen in reaktivem Coding liegt im Trend und ist mit Jetpack Compose auch unter Android verfügbar. Der Umstieg lohnt sich.

Artikel verschenken
In Pocket speichern vorlesen Druckansicht
, Thorsten HĂĽbner

(Bild: Thorsten HĂĽbner)

Lesezeit: 13 Min.
Von
  • Dr. Andreas Linke
Inhaltsverzeichnis

Google hat das Framework Compose schon vor einigen Jahren als Teil des Android-Entwicklungspakets Jetpack vorgestellt und seitdem immer weiter ausgebaut. Inzwischen ist die Technik ausgereift und zum Oberflächenstandard für neue Android-Apps geworden. Dropbox, Zalando, der Google Play Store oder Threads von Meta sind prominente Beispiele für Apps, die mit der modernen UI-Technologie gebaut wurden. Compose-Apps laufen ab Android 5 (SDK 21).

Das Framework setzt ein reaktives Programmiermodell um (manchmal auch deklarativ genannt), bei dem sich das UI automatisch anpasst, wenn sich einzelne Attribute des Datenmodells ändern. Die Art, wie man damit Oberflächen entwickelt, unterscheidet sich deutlich vom herkömmlichen Ansatz.

c't kompakt
  • Die klassische Methode, UIs in XML zu definieren und zur Laufzeit zu laden sowie zu manipulieren, stößt an Grenzen.
  • Jetpack Compose erlaubt eine modernere und nach der Eingewöhnung ĂĽbersichtlichere und robustere Oberflächengestaltung.
  • Anfangs besonders ungewohnt sind die State-Objekte, an denen das Framework erkennt, welche UI-Teile neu aufzubauen sind.
Mehr zum Thema Softwareentwicklung

Traditionell erzeugen Entwickler die UIs meist mit einem grafischen Editor, der das Ergebnis in einem proprietären Format, oft einer XML-Datei, abspeichert. Zur Laufzeit lädt die App die grafische Oberfläche aus der XML-Datei (in Android mit inflate) und verändert sie anschließend per Code, beispielsweise mit findViewById(R.id.text).setText(text) oder button.setEnabled(false).

Das war die Leseprobe unseres heise-Plus-Artikels "Android-Oberflächen reaktiv programmieren mit Jetpack Compose". Mit einem heise-Plus-Abo können sie den ganzen Artikel lesen und anhören.