Чем delegated properties отличается от manual getter и когда что выбрать?

Android / KotlinMiddleKotlin CoreСравнениеandroid kotlin developer|kotlin core|свойства|delegated properties

Что хотят услышать интервьюеры:

Сравнение: delegated properties нужно оценивать относительно manual getter по критериям lifecycle, читаемости, тестируемости, производительности и поддержки.

Ответ:

Когда выбирать delegated properties: когда его свойства прямо соответствуют задаче: делегаты используются для lazy, observable, map-backed properties и custom state abstractions.

На собеседовании: не говорите «это современнее»; объясните trade-off, ограничения и возможные ошибки. Типичный анти-паттерн: отвечать как на Java-собеседовании и не объяснять nullable-типы, immutability, data class, sealed-состояния и scope functions.

val value by lazy { compute() }

Источники

Похожие вопросы