공부내용정리/안드로이드

코틀린 프로퍼티 위임

코딩하는망아치 2021. 10. 6. 21:08

프로퍼티 위임

코틀린은 클래스 뿐아니라 프로퍼티에서도 위임을 제공한다. 프로퍼티 위임은 Getter,Setter 연산자를 위임할 수 있게 해주며 매우 유용한 3가지 방법을 제공한다.

lazy properties 값의 초기화를 처음 프로퍼티를 사용할 때 초기화 한다.
observable properties 프로퍼티에 값이 변경되면 옵저버에게 알려준다.
storing properties 필드가 아닌 맵에 속성을 지정한다.

* 코틀린은 프로퍼티의 위임을 위해 기본적으로 3가지 방법을 추가로 제공한다.

1. Lazy 위임 

- 프로퍼티의 초기화를 인스턴스 생성 시점이 아니라 프로퍼티를 사용하는 시점에 초기화 하는 것

- 사용하는 이유 : 초기화가 오래 걸리는 속성이 있을 경우, 인스턴스 생성 시점에 모든초기화를 진행한다면 전체적인 성능이 매우 저하되기 때문,

 

2. Ovservable 위임

- 주로 관찰하고자 하는 대상(프로퍼티)에 변경 사항이 생길 때, 변경된 사실을 관측자에게 알려주는 것.

 

3. 프로퍼티를 Map객체에 위임하는 것

- Map이란 : 특정 Key에 해당하는 Value를 저장하는 자료구조.