Menu
CoddyTech

Null 안전성이란?

Coddy Kotlin 여정의 기초 섹션에 포함된 레슨. 93개 중 12번째.

많은 프로그래밍 언어에서 가장 흔한 오류 중 하나는 존재하지 않는 것, 즉 null 값에 접근하려고 하는 것입니다. 변수에 실제 데이터 대신 "아무것도 없는" 값이 들어 있을 때 이런 일이 발생합니다.

사용자에게 이름을 물었지만 사용자가 이름을 입력하지 않았다고 상상해 보세요. 먼저 확인하지 않고 코드에서 빈 이름을 사용하려고 하면 프로그램이 충돌합니다. 이런 유형의 버그는 매우 흔해서 "10억 달러짜리 실수"라고 불리기도 합니다.

Kotlin의 해결책: 널 안전성

Kotlin은 이러한 충돌을 없애도록 설계되었습니다. 기본적으로 Kotlin의 변수는 null 값을 보유할 수 없습니다:

fun main() {
    var name: String = "Alice"
    name = null  // 오류! 컴파일되지 않습니다
}

컴파일러는 코드가 실행되기도 전에 이 문제를 잡아냅니다. 이것이 Kotlin을 “널 안전(null safe)”하게 만드는 요소입니다. 언어 자체가 null을 사용해서는 안 되는 곳에서 실수로 사용하지 못하도록 막아 줍니다.

앞으로의 수업에서는 Kotlin을 사용해 실제로 필요할 때 null일 수도 있는 값으로 작업하면서도 코드가 충돌하지 않도록 안전하게 유지하는 방법을 배우게 됩니다.

challenge icon

챌린지

쉬움

Kotlin의 null 안전성을 보여 주기 위해 null을 허용하지 않는 변수 두 개를 선언하세요:

  • 값이 "Kotlin"인 username이라는 String 변수
  • 값이 100인 score라는 Int 변수

그런 다음 println()을 사용해 두 값을 각각 별도의 줄에 출력하세요.

기억하세요: Kotlin에서 일반적인(null을 허용하지 않는) 타입에는 null 값을 담을 수 없습니다. 컴파일러는 변수가 항상 유효한 데이터를 포함하도록 보장합니다.

직접 해보기

fun main() {
    // TODO: 아래에 코드를 작성하세요
    // 값이 "Kotlin"인 nullable이 아닌 String 변수 'username'을 선언하세요
    
    // 값이 100인 nullable이 아닌 Int 변수 'score'를 선언하세요
    
    // println()을 사용해 두 값을 각각 다른 줄에 출력하세요
    
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨

직접 연습해 보세요: Kotlin 플레이그라운드