Menu
CoddyTech

Czym jest bezpieczeństwo null

Część sekcji Podstawy ścieżki Kotlin w Coddy. Lekcja 12 z 93.

W wielu językach programowania jednym z najczęstszych błędów jest próba uzyskania dostępu do czegoś, co nie istnieje: wartości null. Dzieje się tak, gdy zmienna przechowuje „nic” zamiast rzeczywistych danych.

Wyobraź sobie, że pytasz o imię użytkownika, ale nie podał on żadnego. Jeśli twój kod spróbuje użyć tego pustego imienia bez wcześniejszego sprawdzenia, program ulegnie awarii. Ten rodzaj błędu jest tak powszechny, że nazwano go „błędem wartym miliard dolarów”.

Rozwiązanie Kotlin: bezpieczeństwo obsługi wartości null

Kotlin został zaprojektowany, aby wyeliminować te awarie. Domyślnie zmienne w Kotlinie nie mogą przechowywać wartości null:

fun main() {
    var name: String = "Alice"
    name = null  // Błąd! Nie skompiluje się
}

Kompilator wykrywa ten problem, zanim Twój kod w ogóle się uruchomi. To właśnie sprawia, że Kotlin jest „bezpieczny pod względem wartości null”: sam język zapobiega przypadkowemu użyciu wartości null w miejscach, w których nie powinno się jej używać.

W nadchodzących lekcjach dowiesz się, jak Kotlin pozwala pracować z wartościami, które mogą być null, gdy są potrzebne, a jednocześnie chroni kod przed awariami.

challenge icon

Wyzwanie

Łatwy

Zadeklaruj dwie zmienne, które nie mogą przyjmować wartości null, aby zaprezentować obsługę wartości null w Kotlinie:

  • Zmienna typu String o nazwie username z wartością "Kotlin"
  • Zmienna typu Int o nazwie score z wartością 100

Następnie wypisz obie wartości w osobnych wierszach za pomocą println().

Pamiętaj: w Kotlinie zwykłe typy (które nie mogą przyjmować wartości null) nie mogą przechowywać wartości null. Kompilator dba o to, by zmienne zawsze zawierały prawidłowe dane.

Spróbuj swoich sił

fun main() {
    // TODO: Napisz swój kod poniżej
    // Zadeklaruj zmienną typu String, która nie może mieć wartości null, o nazwie 'username' i wartości "Kotlin"
    
    // Zadeklaruj zmienną typu Int, która nie może mieć wartości null, o nazwie 'score' i wartości 100
    
    // Wypisz obie wartości w osobnych wierszach za pomocą println()
    
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Edytor online Kotlin