Menu
Coddy logo textTech

Cos'è la null safety

Fa parte della sezione Fondamenti del percorso Kotlin di Coddy. Lezione 12 di 93.

In molti linguaggi di programmazione, uno degli errori più comuni consiste nel tentare di accedere a qualcosa che non esiste: un valore null. Questo accade quando una variabile contiene «nulla» invece di dati effettivi.

Immagina di chiedere il nome di un utente, ma che non te lo abbia mai fornito. Se il tuo codice prova a usare quel nome vuoto senza prima controllare, il programma si arresta in modo anomalo. Questo tipo di bug è così comune che è stato definito «l’errore da miliardi di dollari».

La soluzione di Kotlin: la sicurezza contro i valori null

Kotlin è stato progettato per eliminare questi arresti anomali. Per impostazione predefinita, le variabili in Kotlin non possono contenere valori null:

fun main() {
    var name: String = "Alice"
    name = null  // Errore! Non verrà compilato
}

Il compilatore rileva questo problema prima ancora che il tuo codice venga eseguito. È questo che rende Kotlin «sicuro rispetto ai valori null»: il linguaggio stesso ti impedisce di usare accidentalmente null dove non dovresti.

Nelle prossime lezioni imparerai come Kotlin ti permette di lavorare con valori che potrebbero essere null quando ne hai davvero bisogno, mantenendo comunque il tuo codice al sicuro dagli arresti anomali.

challenge icon

Sfida

Facile

Dichiara due variabili non nullabili per dimostrare la sicurezza rispetto ai valori null in Kotlin:

  • Una variabile String denominata username con il valore "Kotlin"
  • Una variabile Int denominata score con il valore 100

Poi stampa entrambi i valori su righe separate usando println().

Ricorda: in Kotlin, i tipi regolari (non nullabili) non possono contenere valori null. Il compilatore garantisce che le tue variabili contengano sempre dati validi.

Provalo tu

fun main() {
    // TODO: Scrivi il tuo codice qui sotto
    // Dichiara una variabile String non nullable chiamata 'username' con valore "Kotlin"
    
    // Dichiara una variabile Int non nullable chiamata 'score' con valore 100
    
    // Stampa entrambi i valori su righe separate usando println()
    
}
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Playground Kotlin