Sobes.tech
Middle+

O que são genéricos em Go? Já os usou?

sobes.tech IA

Resposta da IA

Os genéricos em Go são um mecanismo de parametrização de tipos que permite escrever funções, estruturas e interfaces que funcionam com diferentes tipos de dados sem duplicar código. Os genéricos surgiram pela primeira vez no Go a partir da versão 1.18.

Exemplo de uso de genéricos para uma função que retorna o primeiro elemento de um slice:

package main
import "fmt"

func First[T any](slice []T) T {
    return slice[0]
}

func main() {
    nums := []int{1, 2, 3}
    words := []string{"olá", "mundo"}

    fmt.Println(First(nums))  // 1
    fmt.Println(First(words)) // olá
}

Usei genéricos para escrever contêineres e utilitários genéricos, o que reduz significativamente a duplicação de código e melhora a legibilidade.