Monzo crea un'app più solida e di qualità superiore con Compose

Monzo è una banca e un'app che offre servizi finanziari digitali. La sua missione è far funzionare il denaro per tutti. Il sistema di progettazione di Monzo ha iniziato a discostarsi da Material Design, quindi volevano un modo semplice per scrivere e gestire componenti personalizzati in continua evoluzione, quindi hanno scelto Jetpack Compose.

Cosa è stato fatto

Con Compose, i componenti Material Design vengono forniti come livello sopra le API di base indipendenti dal sistema di progettazione. Monzo ha utilizzato le API di base per creare la propria libreria di componenti, utilizzando i componenti Material come riferimento. Hanno iniziato eseguendo la migrazione di una schermata alla volta e ora utilizzano Compose in tutte le nuove schermate. Ora, Compose viene utilizzato in produzione da tutti gli ingegneri Android: "Non abbiamo riscontrato problemi importanti, quindi ci siamo sentiti abbastanza sicuri da iniziare a utilizzarlo per alcune nuove funzionalità selezionate e, alla fine, per tutte le nuove funzionalità".

Risultati

Il team di Monzo ha creato componenti che consentono di creare facilmente nuove schermate: "I componenti che forniamo out-of-the-box rendono la creazione di una schermata durante l'apprendimento di Compose un'esperienza molto più fluida. Le API basate sugli slot sono un modello fantastico che ci consente di creare facilmente componenti più grandi a partire da molti piccoli blocchi di costruzione.“

Con Compose, il team di Monzo è riuscito a creare un'app di qualità superiore, aggiungendo funzionalità piacevoli che in precedenza non riusciva a inserire negli sprint: "Un esempio sono le animazioni: sono così facili da aggiungere in Compose che non c'è quasi nessun motivo per non animare elementi come i cambiamenti di colore, dimensione o elevazione. Queste animazioni "piacevoli" sono spesso troppo difficili da realizzare per valere la pena e la complessità del sistema di visualizzazione".

Il loro codice ora è più breve ed è più facile da leggere, comprendere e gestire: "Il codice dichiarativo è molto più facile da analizzare rispetto al codice che manipola una gerarchia dell'interfaccia utente modificabile. Inoltre, è molto più facile tracciare il codice quando è scritto tutto nella stessa lingua e spesso nello stesso file, anziché passare da Kotlin a XML e viceversa. Non farmi nemmeno iniziare a parlare di temi e stili XML. La gestione dei temi è molto più facile da capire in Compose. Il nostro tema è composto solo dalle proprietà che definiamo, i valori sono coerenti su tutti i dispositivi e, poiché è in Kotlin, è molto facile da cercare e seguire nell'IDE."

Compose ha consentito al team di Monzo di testare facilmente la propria app e assicurarsi che sia accessibile: "Ci ha aiutato a scrivere test meno fragili, che vengono eseguiti in modo affidabile e ci danno molta sicurezza che la nostra app funzioni davvero nelle mani dei nostri utenti. I test tramite il sistema semantico garantiscono inoltre che le nostre schermate siano almeno ragionevolmente accessibili per impostazione predefinita".

Inizia

Scopri di più su Crea.