Sobes.tech
Middle+

Čo sú generiká v Go? Už ste ich použili?

sobes.tech AI

Odpoveď od AI

Generik v Go sú mechanizmus parametrizácie typov, ktorý umožňuje písať funkcie, štruktúry a rozhrania, ktoré pracujú s rôznymi typmi údajov bez duplikácie kódu. Generiká sa prvýkrát objavili v Go od verzie 1.18.

Príklad použitia generík pre funkciu, ktorá vracia prvý prvok slice:

package main
import "fmt"

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

func main() {
    nums := []int{1, 2, 3}
    words := []string{"ahoj", "svet"}

    fmt.Println(First(nums))  // 1
    fmt.Println(First(words)) // ahoj
}

Použil som generiká na písanie všeobecných kontajnerov a utilít, čo výrazne znižuje duplikáciu kódu a zlepšuje čitateľnosť.