Artículos

  • Generales 0

    Cobra y Viper en Go: construir CLIs con subcomandos y gestión de configuración

    Aprende a construir CLIs en Go con Cobra y Viper: subcomandos con AddCommand(), flags persistentes, configuración desde fichero YAML y variables de entorno con AutomaticEnv(). Incluye el antipatrón de MarkFlagRequired con Viper y cómo evitarlo usando RunE.

  • Generales 0

    Zap en Go: logging estructurado de alto rendimiento con campos tipados

    Aprende a usar go.uber.org/zap para logging estructurado de alto rendimiento en Go. Cubre zap.Logger y SugaredLogger, campos tipados, logger.With() para añadir contexto fijo, zapcore para salida múltiple y el antipatrón de fmt.Sprintf que destroza el rendimiento.

  • Generales 0

    Profiling en Go: pprof, benchmarks, escape analysis y optimización de memoria

    Aprende a usar pprof, benchmarks y escape analysis en Go para encontrar cuellos de botella, reducir allocations y aliviar la presión del GC. Ejemplos con sync.Pool, strings.Builder, runtime/pprof y análisis de qué escapa al heap.

  • Javascript 0

    Tipos condicionales en TypeScript: T extends U, infer y distribución automática

    Aprende a usar los tipos condicionales en TypeScript: la sintaxis T extends U ? X : Y, la palabra clave infer para extraer tipos, distribución automática sobre uniones y el truco de [T] extends [U] para evitarla. Ejemplos reales de ReturnType, Parameters, Awaited y NonNullable.

  • Javascript 0

    Mapped types en TypeScript: keyof, in, as y remapping de propiedades

    Los mapped types de TypeScript permiten generar tipos nuevos transformando las propiedades de uno existente. Aprende a usar keyof, in, as y los modificadores readonly y optional para crear Partial, Required, Readonly y Record desde cero.

  • Javascript 0

    Template literal types en TypeScript: concatenar tipos, patrones y utilidades de string

    Los template literal types de TypeScript 4.1+ permiten construir tipos a partir de patrones de cadena. Aprende a combinar uniones, usar Uppercase y Capitalize, tipar eventos del DOM, rutas de API y getters automáticos, con ejemplos reales y el error más habitual explicado.

  • Javascript 0

    Utility types de TypeScript: Omit, Pick, Extract, Exclude, ReturnType, Parameters y más

    Guía práctica de todos los utility types de TypeScript: Partial, Required, Readonly, Pick, Omit, Record, Extract, Exclude, NonNullable, ReturnType, Parameters, InstanceType, Awaited, NoInfer y cómo combinarlos con ejemplos reales de código.

  • Javascript 0

    Narrowing avanzado en TypeScript: type guards, predicados is y discriminated unions

    Aprende a dominar el narrowing avanzado en TypeScript: predicados de tipo con is, assertion functions con asserts, discriminated unions con propiedad literal como discriminante, exhaustiveness checking con never y control flow analysis automático del compilador.

  • Javascript 0

    Generics avanzados en TypeScript: constraints, defaults, variadic tuples y HKTs

    Guía práctica sobre generics avanzados en TypeScript: constraints con extends keyof, parámetros por defecto, variadic tuple types para concatenar y dividir tuplas tipadas, currying tipado, tipos recursivos con límite de profundidad y el patrón URItoKind para simular tipos de orden superior.

  • Javascript 0

    Decoradores en TypeScript 5: decoradores de clase, método, propiedad y accessor estándar

    Guía práctica de los decoradores estándar de TypeScript 5 (Stage 3 TC39). Decoradores de clase, método, field y accessor con ejemplos reales de @logged, @singleton, @memoize, @readonly y @validate, sin necesidad de experimentalDecorators.