공부내용정리/안드로이드
코틀린 프로퍼티 위임
코딩하는망아치
2021. 10. 6. 21:08
프로퍼티 위임
코틀린은 클래스 뿐아니라 프로퍼티에서도 위임을 제공한다. 프로퍼티 위임은 Getter,Setter 연산자를 위임할 수 있게 해주며 매우 유용한 3가지 방법을 제공한다.
| lazy properties | 값의 초기화를 처음 프로퍼티를 사용할 때 초기화 한다. |
| observable properties | 프로퍼티에 값이 변경되면 옵저버에게 알려준다. |
| storing properties | 필드가 아닌 맵에 속성을 지정한다. |
* 코틀린은 프로퍼티의 위임을 위해 기본적으로 3가지 방법을 추가로 제공한다.
1. Lazy 위임
- 프로퍼티의 초기화를 인스턴스 생성 시점이 아니라 프로퍼티를 사용하는 시점에 초기화 하는 것
- 사용하는 이유 : 초기화가 오래 걸리는 속성이 있을 경우, 인스턴스 생성 시점에 모든초기화를 진행한다면 전체적인 성능이 매우 저하되기 때문,
2. Ovservable 위임
- 주로 관찰하고자 하는 대상(프로퍼티)에 변경 사항이 생길 때, 변경된 사실을 관측자에게 알려주는 것.
3. 프로퍼티를 Map객체에 위임하는 것
- Map이란 : 특정 Key에 해당하는 Value를 저장하는 자료구조.