Let 2

[Kotlin] Nullability(널 가능성) - 1

Kotlin in Action 을 공부하고 Effective kotlin 의 내용을 조금 참조하여 정리한 글입니다. Nullability(널 가능성)은 NPE(`NullPointerException`) 오류를 피할 수 있게 돕기 위한 코틀린 타입 시스템의 특성이다. 코틀린과 다른 최신 언어에서 null 에 대한 접근을 런타임에서 컴파일 타임으로 옮겼다. 그래서 컴파일 시 NPE 여부를 미리 검사하여 NPE 예외 가능성을 줄인다. 이번 글은 볼륨이 꽤 되어서 두 개의 글로 나누어서 설명한다. 다음 글: https://sh1mj1-log.tistory.com/212 [Kotlin] Nullability(널 가능성) -2 Kotlin in Action 을 공부하고 Effective kotlin 의 내용을 조금..

Kotlin 2024.01.18

[Kotlin] 수신 객체 지정 람다, 스코프 함수: with, apply, run, let, also

Kotlin in Action 을 공부하고 Effective kotlin 의 내용을 조금 참조하여 정리한 글입니다. 자바에는 없는 코틀린 람다의 독특한 기능이 있다. 바로 수신 객체를 명시하지 않고 람다의 본문 안에서 수신 객체의 메서드를 호출할 수 있도록 하는 것이다. 그런 람다를 수신 객체 지정 람다(lambda with receiver)라고 한다. Scope function(스코프 함수) 대표적인 수신 객체 지정 람다 함수를 알아보기 전 Scope function(스코프 함수)에 대해 먼저 알아보자. 코틀린 공식 문서에서는 스코프 함수를 이렇게 설명한다. 코틀린 stlib 에는 객체의 컨텍스트 내에서 코드 블록을 실행하는 것만을 목적으로 하는 여러 함수가 있다. 람다 식이 제공된 객체에서 이러한 함..

Kotlin 2024.01.17