Twitter ist eine der meistgenutzten Social-Media-Plattformen, auf der Nutzer jederzeit sehen können, was in der Welt passiert. Das Entwicklerteam begann, Jetpack Compose zu verwenden, um sein Designsystem zu modernisieren.
Vorgehensweise
Da die UI-Komponenten und das Designsystem der Twitter App vor etwa zehn Jahren entwickelt wurden und aus älteren Komponenten bestanden, die enorme Wartungsaufwand erforderten, wollte das Entwicklerteam ein neues, skalierbares Designsystem mit zustandslosen UI-Komponenten entwickeln, die einfach zu verwenden und zu verwalten sowie intuitiv zu implementieren, zu erweitern und anzupassen sind. Daher entschied es sich für Compose.
Das Team begann mit dem Austausch der einzelnen Komponenten über sein internes Designsystem und führte Compose in neuen Bildschirmen ein, die nicht von der alten Einrichtung abhängen.
Ergebnisse
Compose war eine gute Lösung für das Ziel, die Entwicklungsgeschwindigkeit, die Zufriedenheit der Entwickler und die Wartbarkeit von UI-Code/-Komponenten zu verbessern. Nachdem die Twitter-Entwickler Compose verwendet haben, sagen sie, dass es „in einem Wort: unglaublich“ ist. Intern bezeichnen wir sie als Android UI 2.0. Sie macht es sehr schwierig, wieder zu unserem alten Ansichtssystem zurückzukehren. Compose hat unsere Effizienz und Geschwindigkeit bei Dingen gesteigert, die wir speziell in Compose entwickelt haben.“
Sie haben Verbesserungen bei der Geschwindigkeit der Entwicklung und der Tests festgestellt: „Die Durchlaufzeit für Designänderungen für alles, was wir in Compose übernommen haben, ist viel schneller als zuvor. Außerdem führen wir viele Tests mit unseren Produktänderungen durch. Das ist viel einfacher und schneller, wenn sie in Compose und Kotlin geschrieben werden.“
Der von ihnen geschriebene Code ist nicht nur intuitiver, sondern auch schneller zu schreiben und leichter zu lesen: „Außerdem ist unsere Themenebene wesentlich intuitiver und leserlicher. Wir konnten in einer einzigen Kotlin-Datei das erreichen, was sonst über mehrere XML-Dateien verteilt war, die für Attributdefinitionen und ‑zuweisungen über mehrere Themenebenen verantwortlich waren. Die Neuimplementierung unserer gesamten Designstruktur im Kontext von Compose dauerte nur wenige Tage bis Wochen und hat sich bereits als robuster und intuitiver erwiesen als unser bisheriges Designsystem.“
Erste Schritte
Weitere Informationen zu Compose