Twitter steigert mit Kotlin die Produktivität und Codezuverlässigkeit

Twitter ist eine der am häufigsten genutzten Social-Media-Plattformen, auf der Nutzer jederzeit sehen können, was in der Welt passiert. Das Entwicklerteam führte Kotlin 2017 ein, um die Codebasis wartungsfreundlicher und die Android-App durch die Null-Sicherheitsfunktionen von Kotlin zuverlässiger zu machen.

Vorgehensweise

Das Team führte Kotlin zunächst in die Codebasis von Periscope und in die Periscope-Funktion der Twitter-App ein, um die Vorteile und Nachteile der Verwendung von Kotlin zu testen. Die Verbesserungen bei der Produktivität und der Zuverlässigkeit des Codes überzeugten das Team und es begann, Kotlin nach und nach in andere Funktionen der Twitter App einzuführen.

Dank Kotlin konnte Twitter die Menge an Code in seiner App verringern, wodurch die Wartung von Boilerplate-Code minimiert und die Produktivität des Teams gesteigert wurde. Sie nutzten Sprachfunktionen wie Datenklassen, versiegelte Klassen und Standardparameter, wodurch sie weniger Code schreiben konnten und schneller waren. Durch die Smart-Casting-Funktion von Kotlin konnte das Team auch die Menge an Code reduzieren, die es schreiben und verwalten muss.

„Kotlin macht Spaß. Die Reduzierung von Boilerplate-Code verringert die Menge an Code, die wir schreiben müssen.“ – Andy Fox, Senior Software Engineer bei Twitter

Die Null-Sicherheitsfunktionen von Kotlin haben auch die Zuverlässigkeit des Twitter-Codes erhöht. Als das Team Kotlin einführte, wurden zunächst stille Fehler aufgedeckt, die zuvor unentdeckt geblieben waren. Durch die Null-Prüfung zur Kompilierzeit kann das Team Probleme früher erkennen und Nullable-Fehler proaktiver beheben.

Ergebnisse

Seit der Umstellung auf Kotlin hat das Team weiterhin eine hervorragende Systemintegrität und Leistung für seine App festgestellt. Gleichzeitig konnte die Produktivität des Teams gesteigert und die Sicherheit der App verbessert werden, da kritische Fehler zur Kompilierzeit statt zur Laufzeit erkannt werden. Aufgrund der höheren Produktivität und Codezuverlässigkeit hat sich das Team entschieden, viele neue Funktionen wie Fleets, DM-Reaktionen und Listen in Kotlin zu schreiben.

Erste Schritte

Weitere Informationen zum Entwickeln von Android-Apps mit Kotlin