La velocidad de desarrollo de Clue se triplica después de reconstruir la aplicación con Jetpack Compose
06/04/2023
Publicado por el equipo de Android
Clave es una aplicación freemium de salud menstrual fundada en 2012 y estuvo entre los primeros desarrolladores de femtech. La aplicación ayuda a las mujeres y las personas que menstrúan a realizar un seguimiento de sus ciclos y atiende a 11 millones de usuarios activos mensuales en más de 190 países. Las características adicionales, incluidas las herramientas para el seguimiento de la salud prenatal y posparto, están disponibles a través del nivel de suscripción de la aplicación, Clue Plus.
Tener acceso a datos de salud menstrual optimizados y fáciles de digerir puede ser un recurso invaluable para las personas que menstrúan, y Clue ha respaldado esta información para los usuarios de Android durante más de una década. Sin embargo, como con cualquier base de código, la aplicación Clue heredó la deuda técnica. Esto limitó la capacidad del equipo para impulsar cambios y funciones rápidamente, escalar los esfuerzos de los desarrolladores y proporcionar una interfaz de usuario moderna a sus usuarios.
Anteriormente, Clue dependía en gran medida de las vistas personalizadas que dificultaban la ampliación del código base existente y requerían métodos de prueba que consumían mucho tiempo y ralentizaban el proceso de desarrollo. El código base de Clue también había acumulado inconsistencias en la interfaz de usuario de valores de temas codificados de forma rígida, como colores y tamaños, y en 2022 los ingenieros de Clue reconocieron que necesitaban una solución más eficiente y flexible. Finalmente aterrizaron en migrar a Jetpack componerel conjunto de herramientas moderno de Android para crear una interfaz de usuario nativa.
“Decidimos que una reescritura completa de la aplicación, con un énfasis específico en la capa de la interfaz de usuario, sería el mejor curso de acción”, dijo Moctezuma Rojas, desarrollador de Android en Clue. “Esta decisión se basó en el hecho de que nos permitiría tener un ciclo de desarrollo más eficiente y rápido, implementar rápidamente funciones que habrían llevado mucho más tiempo desarrollar usando vistas y hacer que nuestro código sea más comprobable”.
Creación de una base de código más rápida y eficiente con Compose
El equipo de Clue vio beneficios inmediatos al reescribir su aplicación con Compose. Por un lado, un ciclo de prueba y desarrollo más rápido y eficiente redujo significativamente el tiempo y el esfuerzo necesarios para mejorar la base de código mientras se reducían los errores y las fallas. Compose también permitió a los ingenieros de Clue implementar funciones más rápido que con Views.
La migración de la aplicación a Compose resultó en una mejor capacidad de prueba para las pantallas, un desarrollo más rápido desde la idea hasta el lanzamiento y mejores procesos de estandarización que se alinearon con las mejores prácticas recomendadas por Recursos para desarrolladores de Android. Compose también ayudó al equipo de Clue a duplicar, y en algunos casos, triplicar, su velocidad de desarrollo en comparación con el antiguo código base.
“Con el sistema de vista tradicional, era difícil agregar nuevas funciones, representaciones visuales o interacciones del usuario debido a la necesidad de crear y mantener vistas personalizadas. Sin embargo, al utilizar Jetpack Compose, hemos podido desarrollar y expandir sin esfuerzo la función Cycle View sin ninguna limitación para agregar elementos”, dijo Moctezuma.
Compose también ayudó a los desarrolladores de Clue a revisar rápidamente otras características importantes dentro de la aplicación, incluidas la vista de calendario, la vista de análisis y las pantallas de configuración y administración de cuentas.
Más creatividad hecha posible con Compose
Compose permitió a los desarrolladores hacer que las pantallas de Clue fueran más intuitivas, mejorar el desplazamiento e implementar un sistema de color personalizado y una biblioteca de componentes que se alineaba con la marca, una gran victoria para el equipo. Anteriormente, agregar nuevas funciones, representaciones visuales o interacciones del usuario era complicado porque requería crear una vista personalizada y un mantenimiento continuo.
Las API de Compose facilitaron mucho la prueba de la interfaz de usuario, por lo que los desarrolladores de Clue se sintieron más seguros sobre lo que estaban enviando a los usuarios. Como beneficio adicional, los desarrolladores de Clue ahora tienen más espacio para explorar la innovación de UX.
“La tematización dinámica personalizada permite a los diseñadores explorar libremente su creatividad sin estar limitados por restricciones tecnológicas”, dijo Moctezuma. “Proporciona un enfoque flexible y escalable para el estilo que se puede adaptar fácilmente a medida que nuestra aplicación evoluciona y crece, lo que da como resultado una experiencia de usuario cohesiva y visualmente atractiva”.
Todos estos cambios mejoraron enormemente la experiencia del usuario para los suscriptores de Clue, lo que resultó en menos mensajes de error e informes de errores. El equipo de Clue también dice que el uso de Compose les ha permitido identificar áreas de mejora en el código de la aplicación que podrían haber impactado potencialmente a sus usuarios.
“Compose aumenta la velocidad del desarrollador al eliminar el código repetitivo, funciona a la perfección con la base de código existente gracias a sus API de interoperabilidad y mejora las pruebas de interfaz de usuario, lo que siempre ha sido doloroso en el desarrollo de Android”, dijo Tilbe Saltan, desarrollador senior de Android en Clue.
Éxito continuo con Jetpack Compose
Compose ha mejorado cada versión posterior de la aplicación y ha hecho que las funciones de vista previa y edición en vivo sean más confiables para los ingenieros de Clue, lo que permite una experiencia de desarrollo más flexible de principio a fin. Desde que implementó Compose, el equipo de Clue también ha visto el entusiasmo de los posibles candidatos interesados en trabajar en la aplicación para poder trabajar con tecnologías de desarrollo más modernas.
“El futuro de Compose tiene muchas áreas de desarrollo potencial que podrían beneficiar a los desarrolladores y las empresas. A medida que Compose continúa evolucionando, podemos esperar ver más mejoras en el rendimiento, la estabilidad, las herramientas y el soporte multiplataforma, lo que lo convertirá en una opción aún más convincente para crear interfaces de usuario de alta calidad”, dijo Tilbe.
Te puede interesar