Guía pragmática de Generics en Go
Aprende cuándo usar tipos paramétricos para colecciones y cuándo recurrir a interfaces para comportamientos.
Aprende cuándo usar tipos paramétricos para colecciones y cuándo recurrir a interfaces para comportamientos.
Explica por qué los métodos en structs genéricos no pueden tener sus propios parámetros de tipo y cómo usar funciones libres como workaround.
Entiende cómo el compilador de Go unifica tipos, por qué falla la inferencia parcial y cuándo es obligatorio ser explícito en el uso de generics.
Aprende a usar constraints como any, comparable y custom interfaces con el operador tilde para tipos genéricos seguros.
Cómo definir funciones y tipos genéricos utilizando parámetros de tipo y restricciones de interfaz para asegurar el tipado estático.
Análisis sobre la llegada de los genéricos a Go 1.18 y los compromisos de diseño para mantener la simplicidad.
Domina el diseño de interfaces de streaming en Go usando io.Copy, TeeReader y el patrón de decoradores para flujos de datos eficientes.
Aprende a diseñar interfaces para facilitar el testeo y a usar mocks funcionales para evitar el acoplamiento con implementaciones concretas.
Explica por qué las interfaces con punteros nil devuelven erróneamente true en comparaciones y cómo evitarlo.
Aprende a construir interfaces complejas mediante composición y a usar el embedding de interfaces en structs para implementar el patrón Decorator.