-

🎯 Swift 6 prometía seguridad ante condiciones de carrera, pero llegó con una barrera enorme: cientos de errores del compilador que aparecían al activar la concurrencia estricta. Muchos desarrolladores activaban Swift 6, veían el caos de advertencias y volvían atrás de inmediato. 🔄 Swift 6.2 introduce la Approachable Concurrency, un cambio fundamental en cómo el…
-

🎯 El gesto de deslizar desde el borde izquierdo para retroceder es uno de los patrones de navegación más intuitivos de iOS. Sin embargo, por defecto en UIKit, este gesto solo funciona desde un área muy estrecha del borde izquierdo de la pantalla. 📏 Apple limita el área táctil del gesto de retroceso a aproximadamente…
-

🚦 Desde iOS 14, el sistema ya no descarga el archivo AASA directamente de tu servidor. En su lugar, usa una CDN gestionada por Apple que cachea el contenido. Esta CDN puede tardar entre 1 y 6 horas en actualizar su caché, lo que complica el desarrollo cuando necesitas probar cambios rápidamente en tu archivo…
-

🔄 Antes de iOS 16, implementar drag-and-drop o compartir datos personalizados requería trabajar con NSItemProvider, serialización manual y mucho código repetitivo. Todo eso cambió con Transferable. ✨ El protocolo Transferable del framework Core Transferable permite describir de forma declarativa cómo tus tipos personalizados se serializan y deserializan para transferencias de datos. Lo mejor: funciona automáticamente…
-

🎯 Diciembre marca el final de un año histórico para Swift como proyecto de código abierto. Desde su nacimiento hace una década, Swift ha evolucionado de ser un lenguaje exclusivo para plataformas Apple a convertirse en una solución multiplataforma que abarca más de 70 repositorios y cientos de contribuidores semanales.🚀 Swift 6.2 representa un salto…
-

🔍 La macro @Query de SwiftData nos permite consultar datos persistentes de forma declarativa, pero muchos desarrolladores no saben que puede volverse completamente dinámico cuando lo necesitamos. ⚡ El problema surge cuando intentas usar @State directamente en un predicado: SwiftData no puede acceder a propiedades de instancia durante la inicialización de @Query. La solución está…
-

🔄 Muchos desarrolladores experimentados siguen teniendo dudas sobre cómo gestionar el ciclo de vida de las clases @Observable en SwiftUI. El problema no es solo técnico: es conceptual. Cuando creamos una clase @Observable en una vista SwiftUI, podría parecer que no necesitamos @State porque las propiedades se actualizan automáticamente. Pero aquí está el peligro oculto.…
-

🚨 Uno de los fallos más comunes en iOS es almacenar claves de API en archivos .plist o .xcconfig sin protección adicional. Aunque mantengas estos archivos fuera del control de versiones, cualquier atacante con herramientas de ingeniería inversa puede extraer las claves del binario compilado en texto plano. 🔐 El Keychain de iOS es el…
-

📄 Trabajar con documentos es fundamental en muchas apps iOS: PDFs, imágenes, documentos Office… Pero no todos los frameworks ofrecen lo mismo. Algunos priorizan simplicidad, otros control total, y cada uno tiene su lugar según tus necesidades. 🚀 Quick Look es tu primera opción cuando necesitas rapidez y cero configuración. Con una sola línea de…

