Twitter steigert mit Compose die Effizienz und Geschwindigkeit der Entwickler

Twitter ist eine der am häufigsten verwendeten Social-Media-Plattformen, auf denen Nutzer jederzeit sehen können, was in der Welt passiert. Das Engineering-Team begann mit Jetpack Compose, um sein Designsystem zu modernisieren.

Die Vorgehensweise

Da die UI-Komponenten und das Designsystem der Twitter-App vor etwa 10 Jahren entwickelt wurden und aus Legacy-Komponenten bestand, die einen enormen Wartungsaufwand erforderten, wollte das Entwicklerteam ein neues, skalierbares Designsystem mit zustandslosen UI-Komponenten entwickeln, die einfach zu verwenden und zu warten und intuitiv zu implementieren, zu erweitern und anzupassen, und beschloss deshalb, Compose zu verwenden.

Das Team begann, die Komponenten einzeln über sein internes Designsystem zu ersetzen, und führte Compose in neuen Bildschirmen ein, die nicht von der Legacy-Einrichtung abhängig waren.

Ergebnis

Compose lieferte eine solide Antwort auf das Ziel, die Geschwindigkeit der Entwickelnden, die Zufriedenheit der Entwickler und die Verwaltbarkeit von UI-Code und Komponenten zu verbessern. Nachdem sie mit der Verwendung von Compose begonnen haben, sagen die Twitter-Entwickler: „In einem Wort: unglaublich. Intern nennen wir es Android UI 2.0 und erschwert es sehr schwierig, wieder in unser altes Ansichtssystem einzutauchen. Dadurch konnten wir Effizienz und Geschwindigkeit bei Dingen steigern, die wir speziell in Compose entwickelt haben.“

Die Geschwindigkeit bei Entwicklung und Tests hat sich verbessert: „Bei allen Funktionen, die wir in Compose übernommen haben, gehen wir viel schneller ab als zuvor. Außerdem experimentieren wir intensiv mit unseren Produktänderungen. Mit Compose und Kotlin lässt sich das viel besser und schneller umsetzen.“

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 lesbarer. Das erreichen wir innerhalb einer einzigen Kotlin-Datei, was sich sonst auf mehrere XML-Dateien erstreckte, die für Attributdefinitionen und -zuweisungen über mehrschichtige Design-Overlays verantwortlich waren. Die Neuimplementierung unserer gesamten Themenstruktur im Kontext von Compose dauerte nur ein paar Tage oder Wochen und hat sich bereits als wesentlich robuster und intuitiver als unser Legacy-Themensystem erwiesen.“

Erste Schritte

Weitere Informationen zu „Compose“