Kotlin lazy property - lateinit/lazy 살펴보기
Kotlin에는 늦은 초기화를 위한 방법 2개를 제공한다.
class의 전역에 아래와 같이 값을 생성하면, 클래스가 만들어지는 시점에 변수를 함께 초기화한다.
class 생성과 동시에 변수가 초기화되면, 재 접근시 빠르게 접근이 가능하여 이득을 볼 수 있다.
class SampleActivity {
private val sampleAdapter: SampleAdapter =
SampleAdapter(ImageLoaderAdapterViewModel(this@SampleMainActivity, 3))
}
하지만 위 변수를 꼭 사용하는 게 아니라면 오히려 메모리 손해를 볼 수 있다.