Artículos

  • Generales 0

    Newtype Pattern en Rust: type safety con wrappers de coste cero

    El newtype pattern en Rust consiste en envolver un tipo primitivo en una struct de un campo para que el compilador distinga tipos parecidos. Aprende a usar From/Into, Display, Debug y validación en el constructor, con ejemplos reales de UsuarioId, Email y AsRef, y coste cero en runtime.

  • Generales 0

    Swift Testing: el nuevo framework de tests con @Test, #expect, suites y tests parametrizados

    Swift Testing es el nuevo framework de tests para Swift 6 y Xcode 16. Aprende a usar @Test, #expect, @Suite, tests parametrizados con arguments y tags para filtrar tus tests, con ejemplos prácticos y los errores más habituales al migrar desde XCTest.

  • Python 0

    multiprocessing en Python: Process, Pool, Queue, Pipe y shared memory para paralelismo real

    Aprende a usar el módulo multiprocessing de Python para ejecutar código en paralelo aprovechando todos tus núcleos de CPU. Cubre Process, Queue, Pipe, Pool con map y starmap, Value, Array y shared_memory con ejemplos prácticos y comparativas de tiempos reales.

  • PHP 0

    Closures y arrow functions en PHP: funciones de primera clase, bind y bindTo

    Aprende a usar closures y arrow functions en PHP: captura de variables con use por valor y referencia, closures como callbacks en array_map y usort, arrow functions de PHP 7.4 con captura automática del scope, y Closure::bind para vincular closures a objetos y acceder a propiedades privadas.

  • Javascript 0

    Patrones de arquitectura con TypeScript: Repository, Service, DTOs y mappers tipados

    Aprende a estructurar una API con TypeScript usando Repository pattern, Service layer, DTOs y mappers tipados. Separa acceso a datos, lógica de negocio y serialización de la API con tipos distintos para cada responsabilidad, con ejemplos reales en NestJS.

  • Generales 0

    go-redis en Go: comandos, pipelines, Pub/Sub, Streams y conexión con context

    Aprende a usar go-redis en Go: conexión con context.Context, agrupación de comandos en pipelines, transacciones con TxPipeline, mensajes en tiempo real con Pub/Sub, colas persistentes con Redis Streams y locks distribuidos con SetNX. Ejemplos reales listos para producción.

  • Javascript 0

    Manejo de errores avanzado en JavaScript: clases Error propias, cause y AggregateError

    Aprende a crear clases Error propias en JavaScript, encadenar errores con la propiedad cause de ES2022, usar AggregateError con Promise.any() y capturar errores asíncronos en Node y el navegador. Técnicas avanzadas con ejemplos reales.

  • Generales 0

    Builder Pattern en Rust: construcción fluida de structs con validación

    Aprende a implementar el patrón Builder en Rust: desde un UsuarioBuilder manual con validación de email y contraseña hasta los crates derive_builder y TypedBuilder para generar builders automáticos con campos opcionales, defaults y verificación en tiempo de compilación.

  • Generales 0

    SwiftData en Swift: @Model, @Query, ModelContext y relaciones entre modelos

    SwiftData es el framework de persistencia nativo de Swift para iOS 17 en adelante. Aprende a usar @Model, @Query, ModelContainer y @Relationship para crear apps con datos persistentes sin el boilerplate de Core Data, con ejemplos CRUD completos y migración de esquema.

  • Python 0

    __slots__ y weakref en Python: optimizar memoria y evitar referencias circulares

    __slots__ en Python elimina el __dict__ de cada instancia y reduce la memoria entre un 40 y un 50 % en clases con miles de objetos. weakref crea referencias que no retienen objetos, evitando fugas en cachés y referencias circulares. Tutorial con ejemplos reales y mediciones.