Sobes.tech
Junior

Esiste tipizzazione dinamica in Go?

sobes.tech AI

Risposta dell'AI

In Go non esiste una tipizzazione dinamica nel senso classico. Go è un linguaggio con tipizzazione statica rigorosa, dove il tipo di una variabile viene determinato durante la compilazione e non cambia durante l'esecuzione.

Tuttavia, in Go ci sono interfacce e il tipo interface{}, che permette di lavorare con qualsiasi tipo di dato, creando una certa flessibilità simile alla tipizzazione dinamica. Ma lavorare con questi valori richiede conversioni di tipo esplicite o l'uso di asserzioni di tipo.

Esempio di utilizzo dell'interfaccia vuota:

var x interface{}
 x = 42
 x = "stringa"

// Per ottenere un tipo specifico, bisogna fare una conversione:
if str, ok := x.(string); ok {
    fmt.Println("È una stringa:", str)
}