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

Monzo est une banque et une application qui propose des services financiers numériques. Sa mission est de faire de l’argent pour tout le monde. Le système de conception de Monzo a commencé à s'éloigner de Material Design. L'équipe cherchait donc un moyen facile d'écrire et de gérer des composants personnalisés en constante évolution. Elle a donc choisi Jetpack Compose.

Stratégie de l'entreprise

Avec Compose, les composants Material Design sont fournis en tant que couche sur les API de fondation indépendantes du système de conception. Monzo a utilisé les API Foundation pour créer sa propre bibliothèque de composants, en se basant sur les composants Material. Elle a commencé par migrer un écran à la fois, utilisant désormais 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. Nous nous sommes donc sentis suffisamment confiants pour commencer à l'utiliser pour certaines nouvelles fonctionnalités, puis pour toutes les nouvelles."

Résultats

L'équipe Monzo a créé des composants qui permettent de créer facilement de nouveaux écrans: "Les composants que nous fournissons directement permettent de créer un écran tout en apprenant Compose, une expérience beaucoup plus fluide. Les API basées sur les emplacements constituent un modèle fantastique qui nous permet de créer très facilement des composants plus volumineux à partir d'un grand nombre de petits éléments de base."

Avec Compose, l'équipe de Monzo a pu créer une application de meilleure qualité en ajoutant des fonctionnalités attrayantes qu'elle ne pouvait pas exploiter auparavant dans ses sprints: "C'est par exemple le cas des animations. Elles sont si faciles à ajouter dans Compose qu'il y a très peu de raisons de ne pas animer des éléments tels que les changements de couleur, de taille ou d'élévation. Ces animations "agréables" sont souvent trop difficiles pour valoir la peine et la complexité du système de vues."

Leur code est désormais plus court, et plus facile à lire, à comprendre et à gérer: "Le code déclaratif est beaucoup plus facile à comprendre que le code qui manipule une hiérarchie d'interface utilisateur modifiable. Il est également beaucoup plus facile de tracer le code lorsqu'il est écrit dans le même langage et souvent le même fichier, au lieu de basculer entre Kotlin et XML. Ne me lancez même pas sur les thèmes et les styles XML ! 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, et comme il est en Kotlin, il est très facile de rechercher et de suivre dans l'IDE."

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

Premiers pas

En savoir plus sur Compose