spinner

SwiftUI, el nuevo framework de Apple protagoniza la WWDC 2019

Aún es de noche en San José, pero los desarrolladores se agolpan a las puertas del centro de convenciones para conseguir un buen sitio en la keynote inaugural de la WWDC. Este año se celebra la trigésima edición y hay muchos rumores asegurando que viene cargada de anuncios muy importantes. Muchos de ellos no saben que Apple tiene preparado un par de ases en la manga que harán que cambie el desarrollo para siempre.

La expectación que sólo Apple sabe crear

A las 10 comienza el evento como todos los años: con un vídeo ensalzando la figura del desarrollador, tan importante para el ecosistema de apps de Apple. La pieza es bastante emotiva y recuerda la tremenda emoción que supone resolver un problema que, a veces, se nos atasca a los artesanos del código. Seguidamente aparece Tim Cook.

Como viene siendo habitual, el CEO de Apple hace un repaso por todos los sistemas operativos que posee la empresa de la manzana. Para todos habrá nuevas herramientas y funcionalidades que los desarrolladores utilizarán para elaborar las nuevas apps que podrán ver la luz en septiembre, junto con las nuevas versiones de tvOS, watchOS, macOS y iOS. Tras la enumeración de mejoras, herramientas y librerías, un nuevo Mac Pro y otras golosinas para el usuario, llegó la gran sorpresa para algarabía de todos los asistentes.

El caramelo para los desarrolladores: SwiftUI

Apple hizo vibrar al auditorio con el lanzamiento de un nuevo framework llamado SwiftUI. Esta librería es la equivalente a UIKit que está escrita en Objective-C y es lo que se ha estado utilizando hasta ahora para generar interfaces de usuario para todas las plataformas dentro del ecosistema de Apple. Viene acompañado de una nueva versión de Xcode: la número 11.

Ejemplo de todo lo que SwiftUI puede hacer. Fuente: Twitter

 

SwiftUI intentará democratizar el diseño de aplicaciones, algo que ya vienen haciendo otros frameworks como React Native o Flutter, de Facebook y Google respectivamente. Esta vez será utilizando Swift, el lenguaje nativo de Apple, para popularizarlo aún más entre la comunidad de desarrolladores.

En la charla inaugural de la conferencia, SwiftUI dejó a todos con la boca abierta. Se necesitan muy pocas líneas de código para montar una interfaz y desde Apple se encargaron de dejarlo claro. Añadiendo y quitando componentes podemos construir nuestra interfaz fácilmente y visualizarlo automáticamente en el Canvas de previsualización o en un dispositivo conectado.

¿Qué tiene de especial SwiftUI?

Como novedad, SwiftUI utiliza sintaxis declarativa. Al contrario que en la sintaxis imperativa, el desarrollador indica lo que quiere que haga la aplicación haciendo el código más legible y fácil de escribir. Gracias a las herramientas del compilador, se permite utilizar de forma declarativa un lenguaje como Swift que no lo es.

Desde la propia previsualización de nuestra interfaz escrita en SwiftUI, podemos cambiar la fuente, el color y la alineación, tan fácil como hasta ahora se hacía con los frameworks de front. No es necesario conocer las particularidades del lenguaje a más bajo nivel.

Algunas fuentes periodísticas ya conocían la existencia de este proyecto secreto, conocido en sus inicios como Amber, y que Apple estaba trabajando en él. Lo que no se esperaban es que fuese a aparecer tan pronto. Tampoco se imaginaba nadie que lo presentado iba a estar tan pulido, incluso en una versión beta. De aquí a septiembre, mes en el que será lanzado oficialmente, aún hay tiempo de detectar y corregir posibles incidencias e incluir el feedback de los desarrolladores de aplicaciones.

En Xcode 11 se presenta una nueva herramienta de Live Editing que permite ver los cambios automáticamente en el simulador y en un dispositivo real conectado. Ya no hay que esperar a que compile el código para ver el resultado. Esta forma de trabajar lo cambia todo, ya que ahora es más fácil probar en varios dispositivos a la vez y plantear diferentes escenarios que testear al momento.

Se trata de un trabajo bidireccional. Podemos escribir el código y a la vez ver en el “Canvas” el resultado final de cómo quedará la aplicación. También podemos hacerlo al revés: arrastrar componentes desde un catálogo al simulador y el código se genera automáticamente a la espera de rellenar los parámetros propios de nuestra solución.

Ejemplo de desarrollo con Swift UI. Fuente: Techcrunch

Los desarrolladores llevaban mucho tiempo esperando una mejora como esta, que permita ahorrar tiempo y cientos de líneas. Antes, para construir y hacer funcionar una interfaz que ahora tardamos en crear 20 minutos, podían estar semanas.

Una de las quejas más comunes entre los desarrolladores es que, aunque Apple proporciona unas herramientas muy potentes y un lenguaje de programación muy eficiente para sus plataformas, las tareas de automatización suelen volverse complejas. Muchas veces hay que rehacer una y otra vez las mismas tareas, algo que ahora se vuelve mucho más sencillo con la creación automática de código.

¿Qué implica SwiftUI para los desarrolladores?

SwiftUI popularizará el uso de Swift ya que todos aquellos desarrolladores que antes no se atrevían y optaban por otros frameworks de desarrollo, perderán el miedo y se pasarán a la plataforma de Apple.

Las apps de iOS normalmente se escriben o en Swift o (cada vez menos) en Objective-C. Hasta ahora, para el desarrollo de interfaces de usuario de una aplicación, podía utilizarse Interface Builde (incluida con el IDE de desarrollo Xcode) como herramienta adicional. Con SwiftUI se agiliza esta tarea, haciéndolo más fácil para aficionados y programadores más avezados.

No obstante, la mayoría de las aplicaciones que actualmente están construidas con UIKit no podrán migrarse porque SwiftUI sólo funcionará a partir de iOS 13 lo que genera un problema para aquellos usuarios con versiones de iOS anteriores.

Los desarrolladores con los que he hablado comentan que, aunque no creen puedan usar SwiftUI en su trabajo diario, tienen pensado jugar con él para desarrollar y construir nuevas ideas. Es quizá el momento de emprender aquellos proyectos que por difíciles de construir se dejaron en un cajón.

Algunas semanas después de la presentación de SwiftUI, ya podemos observar en RRSS la potencia del framework en los vídeos que cuelgan los desarrolladores. Desde juegos a formularios, pasando por animaciones creadas en muy pocas líneas de código. La comunidad ha recibido muy bien la iniciativa del gigante de la manzana. Esperaremos a iOS 13 para descubrir si finalmente tiene verdadera aceptación o es más una promesa que una realidad.

¿Quieres saber que más cosas hacemos en BBVA Next Technologies?

Utilizamos cookies propias y de terceros para mejorar nuestros servicios, brindarle una grata experiencia y mostrar a los usuarios publicidad relacionada con sus preferencias mediante el análisis de sus hábitos de navegación. Si continúa navegando por este sitio web, consideramos que acepta su uso. Puede cambiar la configuración u obtener más información accediendo a nuestra política de cookies aquí.