Monzo crée une application plus robuste et de meilleure qualité avec Compose

Monzo est une banque et une application proposant des services financiers numériques. Sa mission est de faire en sorte que l'argent fonctionne pour tous. Le système de conception de Monzo a commencé à s'écarter de Material Design pour ils voulaient un moyen simple d'écrire et de gérer des composants personnalisés, en constante évolution. Ils ont donc choisi Jetpack Compose.

Ce qu'ils ont fait

Avec Compose, les composants Material Design sont fournis sous forme de couche sur le API de fondation indépendantes du système de conception. Monzo a utilisé les API de base pour créer sa propre bibliothèque de composants, en utilisant les composants Material comme référence. Ils nous avons commencé par migrer un écran à la fois, et nous utilisons maintenant Compose sur tous les nouveaux écrans. Désormais, Compose est utilisé en production par tous les ingénieurs Android: "Nous n'avons rencontré aucun problème majeur, et nous nous sommes sentis suffisamment confiants pour commencer nous l'utilisons pour certaines nouvelles fonctionnalités, et finalement pour toutes les nouvelles."

Résultats

L'équipe Monzo a créé des composants qui leur permettent de créer facilement de nouveaux écrans : "Les composants que nous fournissons prêts à l'emploi rendent la création d'un écran tout en apprenant Compose une expérience beaucoup plus fluide. Les API basées sur des emplacements sont un modèle fantastique qui nous permet de créer très facilement des composants plus importants à partir de nombreux petits blocs de construction."

Grâce à Compose, l'équipe Monzo a pu créer une application de meilleure qualité, en ajoutant des fonctionnalités intéressantes auxquelles ils n'avaient pas accès auparavant Les sprints: "Les animations sont un bon exemple. Elles sont si faciles à ajouter dans Compose que Il y a très peu de raisons de ne pas animer des éléments tels que la couleur, la taille ou l'élévation. des modifications. Ces animations "à avoir" sont souvent trop difficiles pour justifier l'effort et la complexité du système View."

Leur code est désormais plus court, et il est plus facile à lire, à comprendre et maintenir: "Le code déclaratif est beaucoup plus facile à comprendre que le code manipule une hiérarchie d'interface utilisateur modifiable. Il est également beaucoup plus facile de tracer l'écriture dans le code. lorsque tout est écrit dans la même langue et souvent dans le même fichier, et jongler entre Kotlin et XML. Ne me lancez même pas dans le format XML thèmes et styles ! La thématisation est beaucoup plus facile à comprendre dans Compose. Notre thème ne comprend que les propriétés que nous définissons. Les valeurs sont cohérentes sur tous les appareils. Étant donné qu'il est en Kotlin, il est très facile à rechercher et à suivre dans l'IDE."

Compose a permis à l'équipe Monzo de tester facilement son application et de s'assurer que celle-ci est accessible: "Cela nous a permis d'écrire des tests moins fragiles, de s'exécuter de manière fiable, et nous avons l'assurance que notre application fonctionne réellement entre les mains utilisateurs. Les tests via le système de sémantique permettent également de s'assurer que nos écrans sont au moins raisonnablement accessibles par défaut."

Premiers pas

En savoir plus sur Compose