Artículos

  • Generales 0

    Iteradores avanzados en Rust: implementar Iterator, fold, scan, flatten y collect tipado

    Implementa el trait Iterator en Rust desde cero y domina fold, scan, flatten, flat_map, chain, zip, peekable, windows y collect tipado en Vec, HashMap, BTreeSet y String. Ejemplos prácticos con ventas, temperaturas y colecciones reales.

  • Generales 0

    Accesibilidad en SwiftUI: VoiceOver, accessibilityLabel, Traits, Actions y Dynamic Type

    Haz tus apps de iOS accesibles con SwiftUI: accessibilityLabel, accessibilityHint, traits (.isHeader, .isSelected, .updatesFrequently), acciones personalizadas, Dynamic Type con @ScaledMetric, alto contraste y reducción de movimiento, con ejemplos prácticos.

  • Generales 0

    Closures avanzadas en Rust: FnOnce, FnMut, Fn, move closures y punteros de función fn

    Guía sobre closures avanzadas en Rust: diferencia entre Fn, FnMut y FnOnce según cómo capturan el entorno, move closures para threads, cómo retornar closures con impl Fn o con Box dinámico, y el tipo fn para punteros de función. Cuatro ejemplos prácticos progresivos.

  • Generales 0

    MapKit con SwiftUI: Map, Marker, Annotation, cameraBounds y búsqueda de lugares

    Aprende a integrar MapKit en SwiftUI con iOS 17: Map con MapCameraPosition, Marker y Annotation personalizados, overlays con MapCircle y MapPolyline, búsqueda de lugares con MKLocalSearch y Look Around preview. Ejemplos con una app de puntos de interés.

  • Generales 0

    Tipos avanzados en Rust: never type !, DST, type alias e impl Trait en retorno

    Guía práctica sobre los tipos avanzados de Rust: el never type !, los tipos de tamaño dinámico str y [T], el trait Sized y ?Sized, los alias de tipo y las dos formas de usar impl Trait en parámetros y en retorno, con sus limitaciones y errores frecuentes.

  • Generales 0

    StoreKit 2 en Swift: In-App Purchases con Product, Transaction y subscripciones

    StoreKit 2 moderniza las compras en iOS con async/await. Aprende a cargar productos con Product.products, iniciar compras manejando PurchaseResult, verificar acceso con Transaction.currentEntitlements, escuchar renovaciones con Transaction.updates y gestionar suscripciones con SubscriptionInfo.

  • Generales 0

    Trait objects en Rust: dyn Trait, object safety, Box y despacho dinámico

    Los trait objects de Rust permiten polimorfismo en tiempo de ejecución con despacho dinámico por vtable. Aprende a usar Box con dyn Trait, Arc con Send y Sync para hilos, dyn Error para errores universales y a detectar cuándo un trait no es object-safe.

  • Generales 0

    CloudKit en Swift: CKDatabase, CKRecord, consultas y sincronización con iCloud

    Aprende a sincronizar datos con iCloud usando CloudKit sin servidor propio: CKContainer, CKDatabase privada y pública, CKRecord, CKQuery con NSPredicate, paginación con CKQueryOperation, suscripciones push, NSPersistentCloudKitContainer con Core Data y CKAsset para ficheros.

  • Generales 0

    Traits avanzados en Rust: tipos asociados, regla huérfana, newtype y default implementations

    Guía práctica sobre traits avanzados en Rust: tipos asociados frente a parámetros genéricos, implementaciones por defecto, la orphan rule y cómo sortearla con el patrón newtype, y supertraits. Cuatro ejemplos de código reales con los errores de compilación típicos.

  • Generales 0

    TipKit en Swift: mostrar tips de onboarding con reglas, frecuencia y TipView en SwiftUI

    TipKit, disponible desde iOS 17, permite mostrar tips contextuales de onboarding sin gestionar UserDefaults a mano. Aprende a definir tips con @Parameter, reglas condicionales, eventos acumulados y frecuencia de visualización, con ejemplos reales y el antipatrón de resetDatastore.