Kotlin typealias와 inline class를 알아보고 적절한 사용법을 알아보자.

Kotlin inline class는 Kotlin 1.3 버전에 추가되었다. 사용법은 매우 간단하다.

하지만 이와 유사한 kotlin Type aliases도 있다.

이번 글에서는 이 2가지 사용법과 좀 더 좋은 사용법을 함께 알아본다.


이 글에서 알아볼 내용

  • kotlin Type aliases의 사용방법을 알아본다.
  • Kotlin inline class의 사용방법을 알아본다.

Read More

Android Studio 4.1에서 제거된 Kotlin Android Extensions을 알아보자.

안드로이드 4.1 버전에서 새로운 프로젝트 생성 시 기본 플러그인으로 제공하던 apply plugin: ‘kotlin-android-extensions’이 제거되고, 기본 ‘com.android.application’과 ‘kotlin-android’ 만 남게 되었다.

더 이상 ‘kotlin-android-extensions’을 기본으로 제공하지 않는다.

사용하려면 직접 추가해 사용할 수 있고, 이미 사용하던 것 역시 사용이 가능하다.

사실 ‘kotlin-android-extensions’은 좋은 플러그인은 아니다. findViewById의 반복적인 작업을 제거하려고 만들어졌고, 내부적인 캐시를 통해 재사용성을 높였을 뿐이다.

하지만 모든 곳에서 재사용성을 지켜주지 않는다. RecyclerView의 ViewHolder에서는 지켜주지 않는다. 이를 알고 쓰는 사람은 생각보다 많지 않다.


이번 글에서는

  • 새롭게 바뀔 Android Studio 4.2 버전의 코드를 살펴본다.
  • kotlin-android-extensions의 문제점을 알아본다.

Read More

Kotlin Collections에서 지연 계산(lazy)의 이점을 알아보자.

Kotlin collections을 사용할 때 주로 사용하는 map, filter 등을 사용한다. 이러한 함수의 동작 방법을 알아보고, 지연 처리의 장/단점을 알아보려고 한다.

이 글에서는 이전 글의 inline 관련 내용을 포함한다. 이미 알고 있다면 넘어가고, 이전 글이 궁금하다면 한 번 더 살펴보고 오면 좋을 듯하다.

Kotlin inline class와 inline functions을 알아보고, 적절하게 사용하는 방법을 살펴보자.


이 글에서 알아볼 내용

  • collection 사용에 map, filter 등의 api를 알아본다.
  • Collection에도 지연 계산이 가능한데, 지연 처리를 알아본다.
  • inline을 활용하는 collection 확장 함수들이 성능이 더 좋을지, 지연 처리가 더 좋을지 살펴본다.

Read More

Kotlin inline class와 inline functions을 알아보고, 적절하게 사용하는 방법을 살펴보자.

이 글에서는 kotlin inline을 좀 더 살펴보려고 한다.

inline은 말 그대로 inline 키워드를 사용한 함수나 클래스의 내부 코드를 inline 해 컴파일한다는 것이다.

예를 들어 inline functions에 10줄의 코드를 담고 있고, inline을 붙인다면 이 10줄의 코드를 그대로 함수 호출한 부분에 함수 호출한 부분을 제외하고 inline 시켜줌을 뜻한다.

코틀린은 inline이라는 키워드를 직접 제공하며, 2가지 방식의 inline을 제공한다.

이 글에서는 inline class와 inline functions을 알아보고, 이번 글에서는 inline functions에 대해서 좀 더 살펴보겠다.


이 글에서 알아볼 내용

  • inline class를 간단하게 살펴본다.
  • inline functions을 간단하게 살펴본다.
  • inline functions 활용성을 높이기 위한 부분을 좀 더 살펴본다.

Read More

data class를 활용하여 RecyclerView.DiffUtil을 잘 활용하는 방법

코틀린 data class에서 자동으로 처리하는 equals와 hashCode를 알아보자.을 알아보았다.

이전 글에서 알아본 data class의 equals와 hashCode를 사용하여 RecyclerView DiffUtil에서 활용하는 방법을 알아보자.

여기에서 사용한 샘플 코드는 2020-09-22-Android-RecyclerView-DiffUtil-Example에서 확인 가능하다.


이 글에서 알아볼 내용

  • RecyclerView.DiffUtil을 간단하게 알아본다
  • data class 활용한 DiffUtil 사용 시 알아두면 좋을 부분을 알아본다.

Read More