Artículos

  • Javascript 0

    ESM avanzado en JavaScript: dynamic import(), import.meta, import maps y module federation

    Dynamic import() para lazy loading bajo demanda, import.meta.url para localizar el módulo en ejecución, import maps para mapear dependencias sin bundler, top-level await e import attributes. Con cuatro ejemplos reales y los antipatrones más comunes.

  • Javascript 0

    Observers en JavaScript: IntersectionObserver, ResizeObserver y MutationObserver

    Las APIs Observer del navegador te permiten reaccionar a cambios en el viewport y el DOM sin polling ni scroll events. Aprende a usar IntersectionObserver para lazy loading e infinite scroll, ResizeObserver para elementos específicos y MutationObserver para vigilar el árbol DOM con ejemplos rea...

  • Javascript 0

    Service Workers en JavaScript: Cache API, estrategias offline y notificaciones push

    Los Service Workers son scripts que interceptan peticiones de red y permiten que tu app funcione offline. Aprende la Cache API, las estrategias Cache First y Stale While Revalidate, cómo actualizar el SW con skipWaiting y a enviar notificaciones push con VAPID.

  • Javascript 0

    Web Workers en JavaScript: postMessage, SharedArrayBuffer, Atomics y patrones de comunicación

    Los Web Workers permiten ejecutar código JavaScript en hilos separados, evitando que el hilo principal se bloquee. Aprende a usar postMessage, SharedArrayBuffer y Atomics para mover trabajo CPU-intensivo y coordinar threads con seguridad.

  • Javascript 0

    Fetch avanzado en JavaScript: streaming, AbortController, Headers y estrategias de caché

    Domina la Fetch API más allá del uso básico: cancela peticiones con AbortController, añade timeout propio, lee el body como stream para barras de progreso reales, gestiona Headers de forma programática, sube ficheros con FormData y controla la caché del navegador con no-store, force-cache y...

  • Javascript 0

    WeakRef y FinalizationRegistry en JavaScript: referencias débiles y gestión de memoria

    WeakRef y FinalizationRegistry, introducidos en ES2021, permiten trabajar con referencias débiles en JavaScript. WeakRef.deref() devuelve el objeto o undefined si el GC ya lo recogió. FinalizationRegistry ejecuta un callback al liberar el objeto. Útiles en cachés que no deben retener memoria,...

  • Javascript 0

    Proxy y Reflect en JavaScript: traps, metaprogramación y patrones prácticos

    Aprende a usar Proxy y Reflect en JavaScript para interceptar operaciones sobre objetos y funciones. Con ejemplos reales: validación de propiedades, objetos observables tipo Vue, conversión automática de snake_case a camelCase y memoización transparente.

  • Javascript 0

    Generators e iterators en JavaScript: function*, Symbol.iterator y async generators

    Aprende a crear generadores en JavaScript con function* y yield, implementar el protocolo iterable con Symbol.iterator y construir secuencias infinitas sin ocupar memoria. Incluye async generators con for await...of para paginación lazy y pipelines de transformación de datos.

  • Javascript 0

    Async/await avanzado en JavaScript: patrones paralelo/secuencial, error handling y cancelación

    Domina async/await más allá del caso básico: peticiones en paralelo con Promise.all, manejo de errores con try/catch o un helper seguro, iteración de flujos con for await...of y cancelación de operaciones con AbortController. Con ejemplos reales y antipatrones comunes.

  • Ruby 0

    Hanami 2 y Roda: alternativas a Rails para APIs y proyectos más ligeros en Ruby

    Hanami 2 apuesta por inyección de dependencias explícita y arquitectura limpia. Roda es un micro-framework de routing en árbol, minimalista y muy rápido. Te explicamos cuándo tienen sentido frente a Rails y cuáles son sus diferencias reales.