반응형

Generics 2

[Kotlin 공식 문서 정리] 25. inline 함수와 reified 타입

Kotlin을 사용하다 보면 “inline”과 “reified”라는 키워드를 자주 보게 됩니다.특히 이런 코드가 대표적입니다.inline fun String.toObject(): T = ...이 글에서는 Kotlin 공식 문서의 Inline functions, Reified type parameters 내용을 기준으로, inline이 무엇이고, reified가 왜 inline과 항상 같이 등장하는지, 실무에서 어떻게 활용되는지까지 정리합니다.1. inline 함수란 무엇인가?inline 함수는 호출 지점에 함수 본문이 그대로 복사되는 방식으로 동작합니다.가장 큰 목적은 람다 전달 비용을 줄이는 것입니다.inline fun repeatTwice(action: () -> Unit) { action()..

Backend Core/Kotlin 2026.01.19

[Kotlin 공식 문서 정리] 24. Generics와 Variance (in / out)

Kotlin을 어느 정도 사용하다 보면 제네릭(Generic)은 피할 수 없는 주제가 됩니다.특히 다음과 같은 코드에서 한 번쯤은 멈칫하게 됩니다.val strings: List = listOf("a", "b")val anys: List = strings // 왜 안 될까?이 글에서는 Kotlin 공식 문서의 Generics, Variance 섹션을 기준으로, 왜 이런 제약이 존재하는지, 그리고 in / out 키워드가 어떤 문제를 해결하는지를 정리합니다.1. 제네릭은 왜 필요한가?제네릭은 타입 안정성을 유지하면서 재사용 가능한 코드를 만들기 위한 장치입니다.class Box(val value: T)val intBox = Box(1)val stringBox = Box("hello")하지만 제네릭을 사용하..

Backend Core/Kotlin 2026.01.19
반응형