-
[EffectiveKotlin] 최대한 플랫폼 타입을 사용하지 말라언어/Kotlin 2022. 3. 10. 20:22반응형
다른 프로그래밍 언어에서 넘어와 nullable 여부를 알 수 없는 타입을 플랫폼 타입(platform type)이라고 부릅니다.
// 자바 public class JavaClass { public String getValue() { return null; } } // 코틀린 fun statedType() { val value: String = JavaClass().value // NPE 발생 . . . println(value.length) } fun platformType() { val value = JavaClass().value . . . println(value.length) // NPE 발생 }
결론
※ 플랫폼 타입을 사용하는 코드는 해당 부분만 위험할 뿐만 아니라, 이를 활용하는 곳까지 영향을 줄 수 있는 위험한 코드입니다. 그래서 빠르게 해당 코드를 제거하는게 좋습니다.
반응형'언어 > Kotlin' 카테고리의 다른 글
[EffectiveKotlin] 예외를 활용해 코드에 제한을 걸어라 (0) 2022.03.17 [EffectiveKotlin] 가독성을 목표로 설계하라 (0) 2022.03.16 [EffectiveKotlin] 타입을 명확하게 지정하라 (0) 2022.03.13 [EffectiveKotlin] 변수의 스코프를 최소화하라 (0) 2022.03.07 [EffectiveKotlin] 가변성을 제한하라 (0) 2022.02.28