Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Zillow usa los componentes de la arquitectura Android para crear un código nuevo y claro

Zillow es un importante mercado de bienes raíces en línea que ofrece los listados, los datos y las calculadoras que necesitan los consumidores para comprar, alquilar o vender un inmueble. El sitio también conecta a los usuarios con agentes locales, proveedores de hipotecas y diseñadores de hogares.

Zillow, que se lanzó en 2006 y tiene su oficina central en Seattle, mantiene una base de datos de más de 110 millones de viviendas de EE.UU. Además, administra un popular paquete de más de veinte apps de bienes raíces. En julio de 2017, cuando comenzó una importante actualización del código de su app para dispositivos móviles Android, el equipo de Zillow se enfocó en simplificar el trabajo de los desarrolladores mediante un código más legible que los nuevos miembros del equipo pudieran entender fácilmente.

Qué hizo la empresa

Zillow modernizó su código con los componentes de la arquitectura Android. "Estábamos analizando diferentes tipos de arquitectura", comenta Aayush Raj, ingeniero de software de Zillow. "Los componentes de la arquitectura tienen la ventaja adicional de estar optimizados para el ciclo de vida, y esto hace que el código sea mucho más fácil de administrar".

ViewModel permite que los datos sobrevivan a cambios de configuración (como rotaciones de pantalla), mientras que LiveData es una clase de retención de datos observable. Zillow utilizó las dos arquitecturas que en conjunto permitieron crear una plantilla eficaz para la implementación del patrón Model-View-ViewModel (MVVM). "Nos ayudó a mejorar la capacidad de prueba del código", explica Raj. La biblioteca de persistencias de Room también facilitó la compilación de una capa de caché local para que la app no tuviese que extraer datos de la red con tanta frecuencia y pudiese "mejorar el rendimiento y la experiencia del usuario".

Resultados

Según Raj, el traslado de grandes cantidades de código para actualizaciones de datos de las actividades a ViewModels sin lugar a dudas ayudó a que todo el código base fuera más legible. Todavía no convirtieron toda la app a ViewModel, pero los componentes que ya usan esa clase no tuvieron errores relacionados con el ciclo de vida. La comunicación de actualizaciones de datos a las actividades y los fragmentos también funciona muy bien.

"Los desarrolladores son mucho más productivos cuando usan los componentes de la arquitectura Android", comenta Sumiran Pradhan, ingeniero sénior de Desarrollo de Software de Zillow. Los componentes de la arquitectura sirven como guía cuando comienzan desde cero, pero también son útiles para el código base existente. "Los desarrolladores nuevos quedan encantados una vez que entienden dónde reside la lógica de ViewModel", agrega Pradhan.

Cómo comenzar

Todos los desarrolladores pueden acceder a los componentes de la arquitectura Android como parte de Android Jetpack. Comienza a usar los componentes de la arquitectura Android.