Monzo entwickelt mit der Funktion „Schreiben“ eine robustere und hochwertigere App

Monzo ist eine Bank und eine App für digitale Finanzdienstleistungen. Sie haben es sich zur Aufgabe gemacht, Geld für alle nutzbar zu machen. Das Designsystem von Monzo begann, von Material Design abzuweichen, und suchte daher nach einer einfachen Möglichkeit zum Schreiben und Verwalten benutzerdefinierter Komponenten, die sich ständig weiterentwickeln. Daher entschied sich das Unternehmen für Jetpack Compose.

Die Vorgehensweise

Mit Compose werden die Material Design-Komponenten als Schicht über den designsystemunabhängigen Foundation APIs bereitgestellt. Monzo erstellte mit den Foundation APIs eine eigene Komponentenbibliothek, wobei die Material-Komponenten als Referenz dienten. Zuerst migrierte das Team jeweils nur einen Bildschirm. Jetzt wurde in allen neuen Bildschirmen die Funktion „Schreiben“ verwendet. Jetzt wird Compose von allen Android-Entwicklern in der Produktion verwendet: „Wir hatten keine größeren Probleme und waren daher zuversichtlich, dass wir es für einige ausgewählte neue Funktionen und schließlich für alle neuen Funktionen nutzen konnten.“

Ergebnis

Das Monzo-Team hat Komponenten entwickelt, mit denen sich ganz einfach neue Bildschirme erstellen lassen: „Mit den standardmäßig verfügbaren Komponenten lässt sich ein Bildschirm viel reibungsloser erstellen. Die Slot-basierten APIs bieten ein fantastisches Muster, mit dem wir ganz einfach größere Komponenten aus vielen kleinen Bausteinen erstellen können.“

Mit Compose konnte das Monzo-Team eine qualitativ hochwertigere App erstellen und Funktionen hinzufügen, die zuvor in seinen Sprints nicht verfügbar waren: „Ein Beispiel sind Animationen – sie lassen sich in Compose so einfach hinzufügen, dass es sehr wenig Grund dafür gibt, Elemente wie Farben/Größe/Höhenänderungen nicht zu animieren. Diese „netten“ Animationen sind oft zu schwierig, um den Aufwand und die Komplexität im View-System zu lohnen.“

Ihr Code ist jetzt kürzer und einfacher zu lesen, zu verstehen und zu pflegen: „Deklarativer Code ist viel einfacher zu verstehen als Code, der eine änderbare UI-Hierarchie verändert. Außerdem ist es viel einfacher, Code zu verfolgen, wenn alles in derselben Sprache und häufig in derselben Datei geschrieben ist, anstatt zwischen Kotlin und XML hin und her zu wechseln. Fangen Sie nicht mal mit XML-Designs und -Stilen an! Die Auswahl von Designs ist bei der Funktion „Schreiben“ viel einfacher zu verstehen. Unser Thema umfasst nur die von uns definierten Eigenschaften, die Werte sind auf allen Geräten einheitlich und dank Kotlin lässt es sich in der IDE ganz einfach suchen und verfolgen.“

Mit Compose konnte das Monzo-Team seine App einfach testen und dafür sorgen, dass die App zugänglich ist: „Wir konnten damit Tests schreiben, die weniger instabil sind, zuverlässig laufen und uns sehr darauf vertrauen können, dass unsere App tatsächlich in den Händen der Nutzer funktioniert. Durch Tests mit dem Semantiksystem wird auch sichergestellt, dass unsere Bildschirme zumindest standardmäßig erreichbar sind.“

Erste Schritte

Weitere Informationen zu „Compose“