WBF AcademyWBF Academy
Arquitectura Limpia y Diseño Modular en Swift
Intermedio Desarrollo Móvil

Arquitectura Limpia y Diseño Modular en Swift

La 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.

5 módulos 15 clases 6 h 350 preguntas
▶ Empezar a ver

Contenido del curso

Consejos

Ver todos