Artículos
-
Generales
Macros en Swift 5.9: @Observable, #stringify y cómo definir las propias
Las macros de Swift 5.9 generan código verificado por el compilador. Aprende la diferencia entre freestanding (#stringify) y attached (@Observable), cómo expandir una macro en Xcode e implementa tu propia macro con SwiftSyntax.
-
Generales
Extensions en Swift: añadir funcionalidad sin subclasificar ni modificar el original
Las extensions de Swift te permiten añadir métodos, propiedades computadas, subscripts e inicializadores a cualquier tipo existente, incluidos los de la librería estándar. Aprende a dar implementaciones por defecto con protocol extensions.
-
Generales
Protocolos en Swift: definición, conformidad y protocol extensions
Los protocolos son el corazón del diseño en Swift: definen contratos que struct, class y enum adoptan implementando sus requisitos. Aprende a usar protocol extensions, composición y existentials con any.
-
Generales
Protocolos con associated types en Swift: PATs y cuándo son necesarios
Los PATs de Swift permiten que un protocolo declare sus propios tipos genéricos. Aprende qué son, cuándo los necesitas, cómo añadir restricciones con where y cómo usar opaque types para evitar el error can only be used as generic constraint.
-
Generales
Generics I en Swift: funciones y tipos genéricos con type constraints
Aprende a escribir código Swift reutilizable con generics: funciones con type parameters, struct Stack genérico, type constraints con Comparable y Equatable, cláusulas where y por qué los generics no tienen coste en tiempo de ejecución.
-
Generales
Generics II en Swift: conditional conformance, where clauses y extensiones genéricas
Aprende conditional conformance en Swift: cómo hacer que un tipo genérico adopte un protocolo solo cuando sus parámetros lo permiten. Where clauses en extensiones, type erasure con AnyPublisher y primary associated types de Swift 5.7.
-
Generales
Opaque types en Swift: some Protocol el compilador sabe el tipo, el llamador no
Los opaque types de Swift permiten que el compilador conozca el tipo concreto devuelto por una función sin que el llamador lo vea. Aprende a usar some Protocol, some View en SwiftUI y some en parámetros.
-
Generales
Existential types en Swift: any Protocol cuándo usarlos y sus costes
Desde Swift 5.7, any Protocol es la forma obligatoria de declarar tipos existenciales. Aprende la diferencia entre some y any, el coste en rendimiento de los existentials y cuándo usar un genérico en su lugar.
-
Generales
Protocol-Oriented Programming en Swift: composición en lugar de herencia
Aprende qué es la Programación Orientada a Protocolos en Swift y por qué Apple la propuso en WWDC 2015 como alternativa a la herencia de clases. Ejemplos prácticos de protocol extensions, composición y testing con mocks.
-
Generales
ARC en Swift: cómo funciona la gestión automática de memoria sin GC
Cómo funciona ARC en Swift: el compilador inserta retain y release automáticamente para gestionar la memoria sin recolector de basura. Ciclo de vida de objetos y cómo evitar ciclos de retención con ejemplos reales.









