Junior — Middle
Kas teil on kogemusi üldtüüpide kasutamisel programmeerimises?
sobes.tech AI
Vastus AI-lt
Üldtüübid (generics) Go keeles võimaldavad kirjutada funktsioone ja struktuure, mis töötavad erinevate andmetüüpidega, säilitades samal ajal tüübiturvalisuse. Generics'i kasutuselevõtuga Go 1.18-s on võimalik deklareerida tüüpi parameetreid ja kasutada neid koodis.
Näide lihtsast üldfunktsioonist, mis vahetab kahe muutuja väärtused:
package main
import "fmt"
type any = interface{}
func Swap[T any](a, b T) (T, T) {
return b, a
}
func main() {
x, y := 1, 2
x, y = Swap(x, y)
fmt.Println(x, y) // 2 1
a, b := "tere", "maailm"
a, b = Swap(a, b)
fmt.Println(a, b) // maailm tere
}
Sellest tulenevalt võimaldavad generics kirjutada üldisemat ja taaskasutatavat koodi.