관리 메뉴

나만을 위한 블로그

[이펙티브 코틀린] 아이템 51. 성능이 중요한 부분에는 기본 자료형 배열을 사용하라 본문

책/Effective Kotlin

[이펙티브 코틀린] 아이템 51. 성능이 중요한 부분에는 기본 자료형 배열을 사용하라

참깨빵위에참깨빵 2023. 5. 20. 23:09
728x90
반응형

코틀린은 기본 자료형(primitive)을 선언할 수 없지만 최적화를 위해 내부적으론 쓸 수 있다. 기본 자료형은 아래 특징이 있다.

 

  • 일반적인 객체와 달리 추가적으로 포함되는 것들이 없기 때문에 가볍다
  • 값에 접근할 때 추가 비용이 들어가지 않아서 빠르다

 

따라서 대규모 데이터 처리 시 기본 자료형을 쓰면 상당히 큰 최적화가 이뤄진다. 그런데 코틀린의 List, Set 등의 컬렉션은 제네릭 타입이다. 제네릭 타입에는 기본 자료형을 쓸 수 없으므로 wrap된 타입을 써야 한다. 일반적인 경우에는 이렇게 하는 게 훨씬 처리가 쉬워져서 적합하다. 하지만 성능이 중요한 코드라면 IntArray, LongArray 등의 기본 자료형을 활용하는 배열을 쓰는 게 좋다.

 

이처럼 기본 자료형을 포함하는 배열은 코드 성능이 중요한 부분을 최적화할 때 활용하면 좋다. 배열은 더 적은 메모리를 차지하고 더 빨리 동작한다. 다만 일반적인 경우에는 List를 쓰는 게 좋다. 성능이 중요한 경우에는 Array를 떠올려라.

반응형
Comments