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ť.