Qué es Swift UI y cómo aprender a programar en sencillos pasos 2024
11/10/2022 - Actualizado: 29/11/2023
Si tienes pensado programar para Apple tienes que saber lo que es Swift UI. SwiftUI es el nuevo framework con el que cuenta Apple que viene a sustituir al viejo UIKit. Este framework se ha diseñado para poder aprovechar todo el potencial que ofrece Swift y, para lograrlo, ha sido diseñado completamente desde cero. Tan solo creando un framework desde cero se puede aprovechar al máximo todo lo que ofrece el lenguaje Swift, algo que agradecerán los programadores.
Estamos ante un framework exclusivo de Swift. Esto significa que no podrá emplearse en Objective-C. Sin embargo, si esto te supone un problema, existen alternativas para poder presentar las vistas desde Objective-C si por el motivo que sea te hiciese falta. Si necesitas iniciarte en saber qué son los Protocolos en Swift, te lo explicamos en sencillos pasos.
Este nuevo framework es una prueba de que cada vez está todo más unificado dentro de Apple. Gracias a este Swift podemos ver la nueva dirección que van a llevar a cabo los diferentes desarrollos durante los próximos años. En este caso se observa una clara evolución con la potencia del lenguaje para que los desarrolladores cuenten con una mayor flexibilidad dentro de las nuevas APIs.
Diferencias entre Swift UI y UIKit
Swift UI ha cambiado la sintaxis en comparación a su antecesor UIKit. Mientras que UIKit contaba con una sintaxis imperativa, en Swift UI te vas a encontrar con una sintaxis declarativa. Lo que esto significa es que la aplicación responderá a los estados y, dependiendo de este, la aplicación sabrá en todo momento la tarea que tiene que realizar o aquella que se debe de mostrar.
Vamos a verlo mejor con un ejemplo. Vamos a imaginar que contamos con un formulario que cuenta con dos campos diferentes denominados "name" y "surname" y cuenta con un botón de "Send" que no se puede pulsar hasta que los anteriores campos estén rellenados. Gracias a SwiftUI, este botón de "Send" dependerá del estado del contenido de los dos campos anteriores.
De esta forma, este botón permanecerá activado o desactivado dependiendo de ese criterio sin tener la necesidad de escribir un código que así lo indique. El propio lenguaje se vuelve "inteligente" y sabe actuar dependiendo de la situación. Gracias a esto, no solo se consigue facilitar la tarea de programación, si no que también se agiliza un proceso que acaba resultando más cómodo para el programador.
Gracias al uso de este nuevo framework SwiftUI, cada vez que se lleve a cabo un cambio dentro de las variables del estado, el propio programa recalcula automáticamente todo. Con estos cálculos que lleva a cabo, dicho botón "Send" aparecerá como activado o desactivado dependiendo de la situación. Como las variables de los campos anteriores se encuentran ligados a sus campos de texto, cada vez que el propio usuario escriba en estos se iniciará automáticamente ese flujo de cambios de estado.
Swift UI desde 0: Cómo hacer una app.
Para hacer una App con SwiftUI tenemos que fijarnos en un elemento clave, la vista. Básicamente, esta vista deberá de devolver el cuerpo en donde se encuentre el contenido. Este contenido deberá de contar con un contenedor de mayor nivel y este puede estar desde un elemento aislado como un texto o podrá estar en una construcción anidada de varios elementos, cada uno dentro de otro. El único requisito es que cuente con tan solo una vista en su mayor nivel.
Puedes colocar una barra de navegación dentro de la vista. Esta barra sería el elemento de mayor nivel que nos devolvería el cuerpo y la puedes colocar dentro de una vista apilada de forma vertical. Dentro de esta vista puedes contar con un botón y dentro de este incluir un texto y una imagen. Además, dentro de esta vista podrás devolver otras vistas que hayas hecho con anterioridad en otras estructuras. De esta forma podrás crear de forma sencilla una jerarquía mucho más complicada pero completamente organizada.
Con los elementos que cuenten con mayor nivel dentro del sistema podemos devolver lo que queramos, desde vistas de navegación hasta vistas apiladas, formularios... Dentro de la composición de estos elementos se formarán las interfaces. Cualquiera de estas vistas podrá estar en el mayor nivel o, si lo preferimos, podemos anidarlo con otras vistas. Para entendernos mejor, sería una estructura de lo más parecido a una página web de las de toda la vida.
Por lo que respecta a los datos podemos pasarlos entre todas las vistas que pretendamos utilizar. Así mismo, podemos utilizar enumeraciones de datos dentro de la propia estructura o, si lo preferimos, utilizar diferentes fuentes de datos síncronas. El objetivo de estas fuentes sería proporcionar objetos como si fuesen datos dinámicos.
Por otro lado, también podemos contar con datos asíncronos para que una vez que se recuperen provoquen diferentes eventos en la interfaz para que sean mostrados. Si lo preferimos, también es posible darle estado a alguna propiedad para que esta cambie como hemos visto anteriormente. De esta forma, cada vez que se produzca dicho cambio la vista que se produce en la pantalla será redibujada de nuevo con total sencillez.
¿Por qué utilizar Swift UI?
Swift UI viene a facilitar mucho el trabajo de los desarrolladores para pretenden diseñar para Apple. El funcionamiento de Swift UI pretende conseguir una experiencia similar al desarrollo de una página web a su diseño más adaptativo. De esta forma se consigue un desarrollo mucho más sencillo de entender y práctico, por lo que se pueden conseguir mejores opciones de forma sencilla.
Gracias a Swift UI se puede entender de forma más sencilla y también con un solo vistazo como quedaría la interfaz. De esta forma se consigue ver y entender mejor cada elemento, de donde viene y cómo se encuentra conectado. Todo esto implica que sea mucho más sencillo de mantener. Gracias a su sencilla estructura, diferentes herramientas de diseño como pueden ser Sketch o Adobe XD podrán crear generadores de código que sirvan para traducir el diseño a un código.
La nueva era que espera para el desarrollo de aplicaciones para Apple se antoja muy interesante con este Swift UI. Veremos lo que depara el futuro en unos años cuando se asiente este desarrollo por completo.
Deja una respuesta
Quizás te interese...