A medida que las interfaces de las aplicaciones de Android se vuelven más elaboradas, los desarrolladores necesitan cada vez más marcos de software para garantizar que estas aplicaciones funcionen sin problemas en los teléfonos.

Con ese fin, a principios de este año, Facebook lanzó Litho, un marco declarativo para la representación eficiente de la interfaz de usuario en Android.

Pero aunque Litho mejoró el rendimiento del desplazamiento de aplicaciones hasta en un 35 %, los desarrolladores aún enfrentaban el desafío de tener que escribir código imperativo, con estado y difícil de mantener para administrar el flujo de datos en estas interfaces de usuario.

Para abordar estos problemas de mantenimiento, Facebook ahora tiene Secciones de código abierto, una API para estructurar datos y traducirlos a componentes Litho.

Adam Wolff, director de ingeniería de Facebook a cargo del grupo de infraestructura front-end, explica los beneficios de las secciones.

"La litografía es una gran manera de escribir tu [Android] Vistas, una forma de componer imágenes que ves en una aplicación de Android”, dijo.

“Pero lo que realmente no tiene es una forma de administrar los datos que pasan a través de estas interfaces de usuario. Lo que quieres es una API declarativa.

"Cuando se trata de mostrar sus datos, desea lo mismo, desea poder declarar cómo se corresponden los datos con los elementos de sus listas, y la nueva API de secciones hace exactamente eso. Le brinda esta forma declarativa de agrupar esas cosas

“Te da dos cosas: el código que escribes es en realidad mucho más simple y menos propenso a errores. La otra es que puede ser muy eficaz. Muy pocos desarrolladores se molestan en implementar su propio adaptador RecyclerView, que puede ser bueno para actualizar cosas. Por lo general, las personas simplemente actualizan todos los datos en sus contenedores, mientras que la API de secciones puede ser realmente específica y eficiente al respecto.

“Estamos realmente entusiasmados con esto. De alguna manera, creemos que Litho estaba incompleto sin esta API de secciones.

Después de que Facebook convirtió algunas superficies desplazables muy utilizadas de una implementación tradicional de RecyclerView y Vistas a Secciones y Litho, experimentó mejoras significativas en el rendimiento.

La conversión de la superficie de comentarios en Facebook para Android en secciones dio como resultado una mejora del 42 % en el rendimiento de desplazamiento.

Las secciones usan el mismo modelo de datos declarativos que Litho y manejan de manera transparente cosas como calcular conjuntos de cambios mínimos para actualizaciones de datos y actualizaciones granulares de la interfaz de usuario. Como parte de Litho, la API de secciones comparte los mismos conceptos básicos, como la generación de código basada en anotaciones, el manejo de eventos, accesorios y actualizaciones de estado.

Para facilitar la integración con Litho, Sections proporciona un componente integrado, llamado RecyclerCollectionComponent, que puede representar una jerarquía de secciones. La jerarquía de Secciones se convierte en una fuente de datos para RecyclerCollectionComponent, y los componentes que procesan sus datos se convertirán en elementos en el adaptador RecyclerView debajo del capó. Toda la complejidad de las operaciones de administración en su adaptador, como inserciones o eliminaciones, está oculta y manejada por el marco.

Obtenga más información sobre cómo comenzar a usar Secciones aquí.

Ver también

  • Los 10 lenguajes de programación más fáciles de aprender (TechRepublic)
  • Los 10 mejores trabajos de desarrollador de 2017 (TechRepublic)
  • Lenguajes de programación: Python es el más popular, pero Go y Swift están en aumento (ZDNet)
  • Cómo convertirse en un desarrollador de Unity para VR y AR (TechRepublic)
  • Graduados de la Escuela de Programación: ¿Vale la pena contratarlos? (República Tecnológica)
  • Kit de reclutamiento: desarrollador de JavaScript (Tech Pro Research)