Junior — Middle
Ի՞նչ մեթոդներ և գործիքներ եք ճանաչում ձեր նախագծերում ընդհանուր ծրագրավորման իրականացման համար։
sobes.tech AI
Պատասխան AI-ից
Go լեզվում ընդհանուր ծրագրավորման իրականացման համար օգտագործվում են գեներիկներ, որոնք հայտնվել են Go 1.18 տարբերակից սկսած:
Հիմնական գործիքներ և մեթոդներ՝
- Պարամետրային տիպեր (գեներիկներ) — թույլ են տալիս գրել ֆունկցիաներ, կառուցվածքներ և մեթոդներ, որոնք աշխատում են տարբեր տվյալների տիպերով, առանց կոդի կրկնօրինակի:
- Համակարգեր սահմանափակումներով (constraints) — սահմանում են պահանջներ այն տիպերի համար, որոնք կարող են օգտագործվել գեներիկներում:
Գեներիկներով ֆունկցիայի օրինակ՝
package main
import "fmt"
func SumIntsOrFloats[T int | float64](slice []T) T {
var sum T
for _, v := range slice {
sum += v
}
return sum
}
func main() {
ints := []int{1, 2, 3}
floats := []float64{1.1, 2.2, 3.3}
fmt.Println(SumIntsOrFloats(ints)) // 6
fmt.Println(SumIntsOrFloats(floats)) // 6.6
}
Գեներիկների հայտնվելուց առաջ հաճախ օգտագործվում էր interface{} և տիպերի փոխարկում, բայց դա ավելի քիչ անվտանգ և ավելի քիչ արդյունավետ է։