O Monzo cria um app mais robusto e de maior qualidade com o Compose

O Monzo é um banco e um app que oferece serviços financeiros digitais. A missão dele é fazer o dinheiro funcionar para todos. o sistema de design do Monzo começou a se desviar do Material Design e, ela queria uma maneira fácil de escrever e manter componentes personalizados que sejam em constante evolução, por isso escolheu o Jetpack Compose.

O que a equipe fez

No Compose, os componentes do Material Design são fornecidos como uma camada sobre o APIs básicas independentes de design. A Monzo usou as APIs de base para criar a própria biblioteca de componentes, usando os componentes do Material Design como referência. Eles começou a migrar uma tela por vez, usando o Compose em todas as novas telas. Agora, o Compose é usado na produção por todos os engenheiros do Android: "Não encontramos problemas graves e, por isso, nos sentimos confiantes o suficiente para começar a usá-lo em alguns novos recursos selecionados e, eventualmente, em todos os novos recursos".

Resultados

A equipe do Monzo criou componentes que permitem criar novas telas com facilidade: "Os componentes que oferecemos de forma imediata tornam a criação de uma tela enquanto se aprende o Compose uma experiência muito mais fácil. As APIs com base em slots são um padrão fantástico que facilita a criação de componentes maiores usando vários elementos básicos."

Com o Compose, a equipe da Monzo conseguiu criar um app de maior qualidade, adicionando recursos incríveis que antes não eram possíveis nos sprints: “Um exemplo são as animações. Elas são tão fáceis de adicionar no Compose que há poucas razões para não animar coisas, como mudanças de cor/tamanho/elevação. Essas animações "boa de se ter" costumam ser muito difíceis de valer a pena o esforço e a complexidade do sistema de visualização.”

O código está mais curto e mais fácil de ler, entender e manter: “Código declarativo é muito mais fácil de raciocinar do que código que que manipula uma hierarquia de IU mutável. Também é muito mais fácil rastrear o código quando tudo está escrito na mesma linguagem e, geralmente, no mesmo arquivo, em vez de alternar entre Kotlin e XML. Nem quero começar com XML temas e estilos diferentes. É muito mais fácil entender os temas no Compose. Nosso tema consiste apenas nas propriedades que definimos, os valores são consistentes em e, como é em Kotlin, é muito fácil pesquisar e acompanhar IDE."

O Compose permitiu que a equipe do Monzo testasse o app com facilidade e garantisse que ele fosse acessível: "Ele nos ajudou a criar testes menos frágeis, executar de forma confiável e nos deu muita confiança de que nosso app realmente funciona nas mãos dos usuários. O teste pelo sistema de semântica também garante que nossas telas sejam pelo menos razoavelmente acessíveis por padrão".

Primeiros passos

Saiba mais sobre o Compose.