Modelando nuestro JSON
Clase 16 de 36 • Curso de Desarrollo de Aplicaciones iOS con SwiftUI
Contenido del curso
- 4

Programando la primera pantalla en módulos
14:27 - 5

Escribiendo la lógica para mostrar dos pantallas
14:05 - 6

Pantalla de inicio de sesión con SecureField y Scroll
17:01 - 7

Completando nuestra pantalla de inicio de sesión
17:33 - 8

Pantalla de registro de usuario
17:42 - 9

Comprobando el funcionamiento de nuestras pantallas
05:31 - 10

Estructura de las pantallas con TabView
13:19 - 11

Creando nuestra pantalla home
14:04 - 12

Pantalla home: logo y barra de búsqueda
13:28 - 13

Pantalla home: programación de interfaces estáticas
15:50 - 14

Pantalla home: carruseles
13:23
¿Cómo implementar la arquitectura MVVM comenzando por el modelo de datos?
La arquitectura MVVM (Modelo-Vista-Modelo de Vista) es fundamental para desarrollar aplicaciones bien organizadas y mantenibles. En esta ocasión, comenzamos por el corazón de todo: el modelo de datos. Al usar datos provenientes de un JSON a través de peticiones a un servidor, debemos asegurarnos de que estos se modelen correctamente en Swift. Aquí te explicamos cómo hacerlo paso a paso.
¿Cuál es el punto de partida para modelar datos en Swift?
El primer paso es abrir un archivo en Xcode, generalmente llamado model.swift, donde se definirán las estructuras que reflejarán la información en el JSON. Estos datos son recuperados desde una API, que proporciona el JSON con la estructura deseada.
-
Acceso a la API:
- Ve a la URL del API proporcionada.
- Busca la documentación donde se encuentran las APIs disponibles.
- En este caso, utilizamos el método
GETpara obtener la lista de juegos.
-
Análisis del JSON:
- Observa el JSON devuelto, que es un arreglo de objetos JSON donde cada objeto representa un videojuego con detalles como título, estudio, calificación, año de publicación, y más.
- Identifica las estructuras de datos: Arreglos y objetos JSON anidados.
¿Cómo crear estructuras en Swift que sean 'Codable'?
Las estructuras que debes crear deben ser Codable. Esto permite que Swift entienda cómo codificar y decodificar los datos JSON.
Estructura para 'Games'
Primero se crea una estructura principal para manejar todos los juegos en su conjunto:
struct Games: Codable {
var games: [Game]
}
Esta estructura encapsula un arreglo de Game, siendo Games la estructura que mantiene la colección completa.
Estructura para cada 'Game'
Ahora, modelamos un videojuego individual, asegurándonos de que las propiedades coincidan con las llaves en el JSON:
struct Game: Codable {
var title: String
var studio: String
var contentRating: String
var publicationYear: String
var description: String
var platforms: [String]
var tags: [String]
var videoURL: VideoURL
var galleryImages: [String]
}
Observa detalles importantes:
- Cada nombre de variable debe coincidir exactamente con las llaves del JSON.
- Los arreglos se expresan mediante
[String], indicando que pueden contener múltiples valores.
¿Qué hacer con los JSON anidados?
Algunos datos están contenidos dentro de otros objetos JSON, como es el caso de videoURL, que no es un simple string sino un objeto con sus propias propiedades.
Estructura para 'VideoURL'
Define una estructura para manejar este objeto anidado:
struct VideoURL: Codable {
var mobile: String
var tablet: String
}
Ambas propiedades mobile y tablet son strings, y deben ser claramente diferenciadas en el JSON.
¿Por qué es importante modelar correctamente el JSON?
Modelar adecuadamente el JSON es crucial no solo para extraer datos correctamente, sino también para mantener escalabilidad y facilitar futuros desarrollos. Un modelado robusto permite adaptaciones en la aplicación con mayor fluidez y menos esfuerzos, promoviendo un código limpio y útil a largo plazo.
En el próximo paso del desarrollo, aprenderemos cómo realizar peticiones al servidor utilizando este modelo de datos. Así que asegúrate de tener una estructura bien definida antes de seguir adelante con el protocolo MVVM. ¡Continuemos con este fascinante viaje de desarrollo!