Middle+
Kas yra generikai Go? Jau naudojote?
sobes.tech AI
Atsakymas iš AI
Generikai Go yra tipų parametrizavimo mechanizmas, kuris leidžia rašyti funkcijas, struktūras ir sąsajas, kurios veikia su skirtingais duomenų tipais be kodo dubliavimo. Generikai pirmą kartą pasirodė Go nuo versijos 1.18.
Pavyzdys, kaip naudoti generikus funkcijai, kuri grąžina pirmąją sąrašo elementą:
package main
import "fmt"
func First[T any](slice []T) T {
return slice[0]
}
func main() {
nums := []int{1, 2, 3}
words := []string{"labas", "pasauli"}
fmt.Println(First(nums)) // 1
fmt.Println(First(words)) // labas
}
Naudojau generikus rašydamas bendrus konteinerius ir naudingas funkcijas, kas žymiai sumažina kodo dubliavimą ir pagerina skaitomumą.