Introducción al Patrón MVVM

1

Implementación de MVVM en Swift: Organiza y Optimiza tus Apps

2

Patrones de Arquitectura y Diseño en Desarrollo de Software iOS

3

Arquitectura MVC y MVP en Desarrollo iOS

4

Principios SOLID en Desarrollo de Software

5

Arquitectura MVVM en iOS: Principios Solid y Swift UI

Quiz: Introducción al Patrón MVVM

Estructura de un Proyecto con MVVM

6

Proyecto MVVM en Swift: Buenas Prácticas y Configuración Inicial

7

Modelo de Datos en MVVM: Creación de la Estructura Ítem en XCode

8

Creación de Modelo de Datos con Core Data en Xcode

9

Creación de Vistas en Xcode para Aplicaciones MVVM

10

Creación de View Models con Combine en Swift para Aplicaciones Reactivas

Quiz: Estructura de un Proyecto con MVVM

Operaciones CRUD en un proyecto con MVVM

11

Crear función "add todo" en arquitectura MVVM con Core Data

12

Funcionalidades básicas para gestionar tareas en SwiftUI

13

Listar y Detallar Notas en Aplicaciones de Tareas

14

Implementación de Funcionalidad de Edición en Aplicación de Tareas

15

Archivar Todos en Aplicación de Tareas

16

Desarchivar y Restaurar Tareas en Aplicaciones de Notas

17

Eliminar tareas en una aplicación de gestión de pendientes

18

Implementación de Estado de Tarea en Aplicación de Tareas

19

Creación de Vistas Amigables en SwiftUI para Aplicaciones de Tareas

Quiz: Operaciones CRUD en un proyecto con MVVM

Clean Architecture

20

Implementación de Clean Architecture paso a paso

21

Estructura y Ventajas de la Clean Architecture

22

Estructura de Proyectos con Clean Architecture y The MovieDB API

23

Mapeo de JSON a Objetos Swift para TV Shows Populares

24

Conexión a API y Manejo de Datos en Xcode usando Clean Architecture

25

Casos de Uso en la Capa de Dominio para Aplicaciones de TV

26

Creación de la Capa de Presentación en SwiftUI con MVVM y Clean Architecture

27

Navegación en SwiftUI: Implementación de Detail View y ViewModel

Quiz: Clean Architecture

MVVM y Clean Architecture

28

Arquitectura de Software: Clean Architecture y MVVM en Proyectos Reales

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Proyecto MVVM en Swift: Buenas Prácticas y Configuración Inicial

6/28
Recursos

Iniciar un proyecto en Xcode clonando un repositorio es una tarea sencilla y efectiva, tanto para desarrolladores experimentados como para quienes se estén aventurando en el mundo del desarrollo de aplicaciones iOS. Siguiendo buenas prácticas y un flujo de trabajo estructurado, podrás estar rápidamente en camino a crear aplicaciones de alta calidad.

Pasos para clonar el repositorio y abrir el proyecto en Xcode

  1. Clonar el repositorio: Para empezar, abre una terminal y ejecuta el comando git clone seguido de la URL del repositorio que deseas clonar. Esto descargará todo el contenido del repositorio en tu máquina local.

  2. Importar el proyecto en Xcode: Una vez clonado, abre Xcode y selecciona la opción para abrir un proyecto existente. Navega hasta la carpeta del repositorio que acabas de clonar y selecciona el archivo del proyecto.

Archivos esenciales en el proyecto

  • ContentView: Este es un archivo clave que contiene el código base para crear una vista en tu aplicación. Aquí, la importancia del conocimiento en SwiftUI es fundamental, te animamos a tomar algún curso, como el que ofrece Platzi, si necesitas fortalecer esta área.

  • CursoMVMBaseApp: Es el punto de partida de tu aplicación. Contiene la anotación @main, definiendo el inicio de cualquier aplicación iOS. Hereda de App para estructurar la aplicación y gestionar la interacción entre las vistas, usando ContentView como la primera pantalla que verá el usuario.

¿Qué son y para qué sirven las extensiones comunes (Commons)?

Las extensiones comunes, nombradas aquí como "commons", son componentes reutilizables que agilizan el desarrollo. Estas vistas y estructuras, lejos de requerir código repetitivo, proporcionan funcionalidades que se pueden aplicar en diversas áreas del proyecto.

Ejemplos de extensiones comunes

  • Redondeo de esquinas: Se puede utilizar una extensión para establecer curvas redondeadas en diversos elementos como textos, imágenes o botones.

  • Transparencia en scroll: Permite que un scroll se vea un poco transparente, mejorando la experiencia visual del usuario.

  • Tareas flotantes con ToDoSheets: Crea vistas flotantes útiles para, por ejemplo, agregar pequeñas pantallas donde los usuarios puedan introducir tareas nuevas. Contiene elementos interactivos como cajas de texto y botones para almacenar información.

¿Cómo personalizar entradas de texto y vistas previas?

Personalizar entradas y vistas es clave para mejorar la interface de usuario, así haciendo las aplicaciones visualmente atractivas y funcionales.

Personalización de entradas de texto con ToDoTextInput

En este nivel, puedes crear un Label y un Placeholder que facilitarán al usuario agregar o recibir texto. Esto contribuye a crear un ambiente gráfico cohesivo.

Crear vistas previas con SwiftUI Previews

Para ver cómo se traducen las personalizaciones en tu aplicación, SwiftUI ofrece la funcionalidad de crear un Preview.

Ejemplo de creación de una vista previa:

import SwiftUI

struct ContentView: View {
    var body: some View {
        VStack {
            Text("Hola Platzi")
                .padding()
                .background(Color.green)
                .clipShape(ToDoRoundCorner(radius: 30, corners: .allCorners))
        }
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}

Explorando ToDoRoundCorner

Esta estructura es usada directamente para darle forma a las vistas, determinando el radio de las esquinas personalizadas, una ventaja visual significativa para destacar el diseño de tu app.

Animamos a que sigan explorando estas funcionalidades y a que realicen pruebas viendo las vistas previas, así podrán observar cómo los cambios afectan la estética de la aplicación. ¡Continúa aprendiendo y mejorando en el desarrollo de aplicaciones iOS!

Aportes 6

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

![](https://static.platzi.com/media/user_upload/Screenshot%202025-01-08%20at%209.47.08AM-a8a49881-610a-427c-a9c2-ae0b36f44b5a.jpg)
![](https://static.platzi.com/media/user_upload/Screenshot%202025-03-29%20at%2010.28.31AM-a173af3f-fe76-44a1-9e18-ce4bd3628034.jpg)
![](https://static.platzi.com/media/user_upload/Screenshot%202025-03-29%20at%2010.20.35AM-a1faaf6d-e1ec-4e8d-95a3-098eeb6b9780.jpg)
Tengan en cuenta que necesitan Xcode 16.1 o superior para correr el código que se descarga de GitHub, y para que Xcode se pueda actualizar a Xcode 16.1+ se debe actualizar primero el MacOS a "macOS Sequoia" una vez actualizado el sistema operativo recién se podrá actualizar Xcode, y listo ya estas listo para seguir con la clase.
Para el ToDoSheet `#Preview{` `ToDoSheet(isShow:.constant (``true``)){` `Text("Hola mundo!")` `}` `}` Para el ToDoTextInput : \#Preview{ `ToDoTextInput( "Escribe tu nombre", text: .constant(""), label: "Nombre", variant: .textField)` `}`
![](https://static.platzi.com/media/user_upload/Screenshot%202025-01-28%20at%2012.52.59AM-01b815f0-05a2-469a-8f1b-f343d89cc10e.jpg)![](https://static.platzi.com/media/user_upload/Screenshot%202025-01-28%20at%2012.53.12AM-1c6603ac-e82b-4657-a000-e9a03ac74a07.jpg)