Twitter est l'une des plates-formes de réseaux sociaux les plus utilisées. Elle permet aux utilisateurs de voir ce qui se passe dans le monde à un moment donné. L'équipe d'ingénieurs a commencé à utiliser Jetpack Compose pour moderniser son système de conception.
Ce qu'ils ont fait
Étant donné que les composants d'interface utilisateur et le système de thématisation de l'application Twitter ont été développés il y a environ 10 ans et qu'ils étaient composés d'anciens composants nécessitant d'énormes efforts de maintenance, l'équipe d'ingénieurs a souhaité créer un nouveau système de conception évolutif, avec des composants d'interface utilisateur sans état faciles à utiliser et à gérer, et intuitifs à implémenter, étendre et personnaliser. Elle a donc décidé d'utiliser Compose.
L'équipe a commencé à remplacer les composants par le biais de son système de conception interne et en implémentant Compose dans de nouveaux écrans qui ne dépendent pas de l'ancienne configuration.
Résultats
Compose a fourni une réponse solide à leur objectif d'améliorer la vitesse de développement, la satisfaction des développeurs et la facilité de maintenance du code/composant de l'UI. Après avoir commencé à utiliser Compose, les ingénieurs Twitter déclarent qu'il s'agit d'"une solution incroyable. En interne, nous l'appelons "UI 2.0 Android", ce qui rend très difficile de revenir à notre ancien système de vues. Il a augmenté notre efficacité et notre rapidité pour les éléments que nous avons développés spécifiquement dans Compose."
Ils ont constaté une amélioration de la rapidité du développement et des tests: "Le temps de traitement des modifications de conception pour tout ce que nous avons adopté dans Compose est beaucoup plus rapide que ce que nous aurions pu constater auparavant. De plus, nous testons beaucoup nos modifications de produits, et cela est beaucoup plus facile et rapide lorsqu'elles sont écrites en Compose et en Kotlin."
Le code qu'ils écrivent est non seulement plus intuitif, mais aussi plus rapide à écrire et plus facile à lire: "De plus, notre couche de thématisation est beaucoup plus intuitive et lisible. Dans un seul fichier Kotlin, nous avons pu réaliser ce qui nécessitait auparavant plusieurs fichiers XML, responsables de la définition des attributs et des attributions via plusieurs superpositions de thème. La réimplémentation de l'ensemble de notre structure de thématisation dans le contexte de Compose n'a pris que quelques jours à quelques semaines, et s'est déjà révélée plus robuste et intuitive que notre ancien système de thèmes."
Premiers pas
En savoir plus sur Compose