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
}
გენერიკების გამოჩენამდე ხშირად გამოიყენებოდა ინტერფეისი{} და ტიპების კონვერტაცია, მაგრამ ეს ნაკლებად უსაფრთხო და ნაკლებად ეფექტურია.