Arquitectura Limpia y Diseño Modular en Swift
IntermedioLa mayoría de las apps iOS no se pudren porque el código sea malo. Se pudren porque todo depende de todo, así que ningún cambio llega a ser local. Este curso de nivel intermedio trata sobre las decisiones estructurales que mantienen una app modificable durante años, y las enseña tal como se usan de verdad, sobre una base de código Swift real y no sobre un diagrama. Empezarás con SOLID aplicado de forma concreta en Swift: qué significa el principio de responsabilidad única cuando un tipo tiene tres motivos para cambiar, por qué el principio de inversión de dependencias trata de quién es dueño del protocolo y no de tener protocolos por tenerlos, y cómo la regla de dependencia (las dependencias del código fuente apuntan hacia adentro, hacia la política, nunca hacia afuera hacia los frameworks) es la única idea sobre la que descansa toda la arquitectura. Después construirás una capa de dominio que valga la pena: casos de uso que expresan lo que hace la app en lenguaje de negocio, entidades y tipos por valor que vuelven irrepresentables los estados inválidos, y un núcleo puro rodeado de una cáscara imperativa que habla con la red, la base de datos y la interfaz. La parte central del curso trata de las fronteras, porque ahí es donde vive el diseño: MVC, MVVM y MVP tratados como detalles de presentación y no como arquitecturas, y los patrones que permiten que las capas se encuentren sin filtrarse — Adapter, Decorator, Composite, Null Object y una raíz de composición donde el grafo se ensambla una sola vez en lugar de quedar disperso por toda la app. Luego dividirás un monolito en paquetes de Swift, elegirás entre cortar horizontalmente por capa y verticalmente por funcionalidad, romperás las dependencias cíclicas que aparecen en cuanto lo intentas, y obtendrás tiempos de compilación y testeabilidad independiente como recompensa. Por último, honestidad: cómo demostrar la regla de dependencia con pruebas en vez de con esperanza, cómo refactorizar hacia las fronteras de forma incremental en lugar de reescribir, y cómo reconocer cuándo esto es sobreingeniería genuina para la app que tienes delante. Requiere que ya escribas Swift y hayas publicado algo. Al terminar, podrás mirar una app y ver sus costuras.
Contenido del curso
Examen de certificación
Examen de certificación
Arquitectura Limpia y Diseño Modular en Swift
🔒 Desbloquea el examen
Completa los requisitos anteriores para desbloquear el examen
Examen de certificación
Arquitectura Limpia y Diseño Modular en Swift
30 preguntas
Todos los niveles de dificultad
45 minutos
Se envía automáticamente cuando se acaba el tiempo
70% para aprobar
Gana tu insignia de certificación
Sin marcha atrás
Una vez que respondes, avanzas
Consejos
Ver todoNombra lo que la estructura compra y lo que cuesta
Cada capa, protocolo y módulo es un intercambio — di el intercambio en voz al...
Regla de tres antes de extraer una abstracción
Dos copias de la misma lógica pueden esperar; una tercera copia es la señal r...
Un protocolo con un solo conformador y ningún doble de prueba es especulativo
Si nada ha necesitado jamás un segundo ReportExporting, la abstracción es una...
Cada paso de refactorización debe poder publicarse por sí solo
Si un paso deja el código en un estado que no desplegarías, era demasiado grande