Sobes.tech
Junior — Middle

Môžete vysvetliť koncept generických typov v programovaní?

sobes.tech AI

Odpoveď od AI

Generické typy (generics) umožňujú vytváranie komponentov, tried, funkcií alebo štruktúr, ktoré pracujú s rôznymi dátovými typmi, pričom zabezpečujú bezpečnosť typov a opätovné použitie kódu.

Namiesto písania samostatného kódu pre každý typ napíšete jeden generický kód s parametrom typu. Pri použití tohto kódu špecifikujete konkrétny typ, s ktorým chcete pracovať.

Napríklad v Swift (iOS) môžete deklarovať generickú funkciu:

generic func swapValues<T>(_ a: inout T, _ b: inout T) {
    let temp = a
    a = b
    b = temp
}

var x = 5
var y = 10
swapValues(&x, &y) // x je teraz 10, y je teraz 5

var s1 = "ahoj"
var s2 = "svet"
swapValues(&s1, &s2) // s1 je teraz "svet", s2 je teraz "ahoj"

Tu je T parameter typu, ktorý môže byť akýkoľvek typ. To umožňuje funkcii pracovať s akýmkoľvek typom dát, pričom zachováva bezpečnosť typov.

Generické typy sa široko používajú na tvorbu kolekcií, ako sú polia, slovníky a pod., kde sa môže líšiť typ prvkov.