Sobes.tech
Junior — Middle

Layihələrinizdə ümumi proqramlaşdırmanı həyata keçirmək üçün hansı metod və alətləri bilirsiniz?

sobes.tech Süni İntellekt

AI-dan cavab

Go dilində ümumi proqramlaşdırmanı həyata keçirmək üçün generiklər istifadə olunur və bunlar Go 1.18 versiyasından etibarən mövcuddur.

Əsas alətlər və metodlar:

  • Parametrik tiplər (generiklər) — müxtəlif məlumat tipləri ilə işləyən funksiyalar, strukturlar və metodlar yazmağa imkan verir, kodu təkrarlamadan.
  • Məhdudiyyətlər ilə interfeyslər (constraints) — generiklərdə istifadə oluna biləcək tiplər üçün tələbləri müəyyən edir.

Generiklərlə funksiyanın nümunəsi:

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
}

Generiklər yaranmazdan əvvəl, tez-tez interfeys{} və tiplərin çevrilməsi istifadə olunurdu, amma bu daha az təhlükəsiz və daha az səmərəlidir.