본문/내용
1. Kotlin에서 nullable 타입과 non-nullable 타입의 차이점에 대해 설명하세요.
Kotlin에서 nullable 타입과 non-nullable 타입의 가장 큰 차이점은 값이 null이 될 수 있는지 여부입니다. nullable 타입은 기호를 사용하여 선언하며, null 값을 허용합니다. 예를 들어, String 타입 변수는 null이나 문자열 값을 가질 수 있습니다. 반면, non-nullable 타입은 없이 선언하며 null 값을 허용하지 않습니다. Kotlin은 null 관련 NullPointerException 발생률을 대폭 낮추기 위해 nullable과 non-nullable 구분을 엄격히 합니다. 실제로 JetBrains의 Kotlin 사용 사례를 보면 null 관련 예외 발생률이 Java에 비해 80% 이상 낮아졌으며, 개발 시간과 디버깅 시간이 감소하는 효과가 있습니다. Kotlin에서는 nullable 타입 변수는 null 체크를 강제하는 안전 호출 연산자(.)를 제공하여, null이 아니면 수행하고 null이면 null을 반환하게 하여 NPE를 방지합니다. 예를 들어, null 가능성 있는 객체에 대해 safe call을 사용하지 않으면 컴파일 단계에서 오류를 잡아내므로 안정성이 높아집니다. 따라서 nullable과 non-nullable 타입 구분은 코드 안정성과 유지보수성을 …