Monzo compila una app más sólida y de mayor calidad con Compose

Monzo es un banco y una app que ofrece servicios financieros digitales. Su misión es que el dinero funcione para todos. El sistema de diseño de Monzo comenzó a desviarse de Material Design, por lo que querían una forma fácil de escribir y mantener los componentes personalizados que evolucionan constantemente. Por eso, eligieron Jetpack Compose.

Qué hizo la empresa

Con Compose, los componentes de Material Design se proporcionan como una capa sobre las APIs básicas independientes del diseño. Monzo usó las APIs básicas para compilar su propia biblioteca de componentes con los componentes de Material como referencia. Comenzaron migrando una pantalla a la vez y ahora usan Compose en todas las pantallas nuevas. Ahora, todos los ingenieros de Android usan Compose en producción: "No encontramos ningún problema importante, por lo que nos sentimos lo suficientemente seguros de comenzar a usarlo para algunas funciones nuevas seleccionadas y, con el tiempo, para todas las funciones nuevas".

Resultados

El equipo de Monzo creó componentes que les permiten compilar pantallas nuevas con facilidad: "Los componentes que proporcionamos de inmediato permiten compilar una pantalla y, al mismo tiempo, aprender a usar Compose para ofrecer una experiencia mucho más fluida. Las APIs basadas en ranuras son un patrón fantástico que nos facilita la compilación de componentes más grandes a partir de muchos bloques de compilación pequeños".

Con Compose, el equipo de Monzo pudo compilar una app de mayor calidad y agregó funciones increíbles a las que antes no podían acceder en sus sprints: "Un ejemplo son las animaciones, que son tan fáciles de agregar en Compose que hay muy pocas razones para no animar elementos, como los cambios de color, tamaño y elevación. A menudo, estas animaciones "agradables" son demasiado difíciles para valer el esfuerzo y la complejidad en el sistema de View".

Ahora su código es más corto y es más fácil de leer, comprender y mantener: "El código declarativo es mucho más fácil de entender que el código que manipula una jerarquía de IU mutable. Además, es mucho más fácil rastrear el código cuando está escrito en el mismo lenguaje y, a menudo, en el mismo archivo, en lugar de alternar entre Kotlin y XML. Ni siquiera empiecen a hablar de temas y estilos XML. Los temas son mucho más fáciles de comprender en Compose. Nuestro tema solo consiste en las propiedades que definimos, los valores son coherentes en todos los dispositivos y, como está en Kotlin, es muy fácil buscar y seguir en el IDE".

Compose permitió que el equipo de Monzo probara fácilmente su app y se asegurara de que fuera accesible: "Nos ayudó a escribir pruebas menos frágiles, que se ejecuten de manera confiable y nos dé mucha confianza de que la app funciona en manos de los usuarios. Las pruebas a través del sistema semántico también garantizan que nuestras pantallas sean, al menos, accesibles de forma predeterminada”.

Comenzar

Obtén más información sobre Compose.