Sobes.tech
Junior — Middle

Εξηγήστε την έννοια του γενικού προγραμματισμού χρησιμοποιώντας Generics στη γλώσσα Go.

sobes.tech AI

Απάντηση από AI

Ο γενικός προγραμματισμός (Generics) στη Go επιτρέπει τη γραφή συναρτήσεων, τύπων και δομών που λειτουργούν με διαφορετικούς τύπους δεδομένων, διατηρώντας την ασφάλεια τύπων. Αντί να χρησιμοποιεί το interface{} και μεταγενέστερες μετατροπές τύπων, τα Generics επιτρέπουν την παραμετροποίηση των τύπων.

Παράδειγμα μιας συνάρτησης με Generics:

func PrintSlice[T any](s []T) {
    for _, v := range s {
        fmt.Println(v)
    }
}

Εδώ, το T είναι μια παράμετρος τύπου, και το any σημαίνει οποιονδήποτε τύπο. Μια τέτοια συνάρτηση μπορεί να δεχτεί slices οποιουδήποτε τύπου, π.χ., []int ή []string.

Τα Generics βοηθούν στο να γράφουμε πιο γενικό και ασφαλές κώδικα, μειώνοντας την επανάληψη.