FYI: прив'язка даних рекомендується замість синтетичної для перегляду перегляду.
Коментар від DA від Android від Google на Reddit
Гей! Адвокат розробника для Android у Google тут!
Я хотів додати трохи тла тут. Розширення Kotlin із синтетичними поглядами ніколи не було навмисно “рекомендованим”, хоча це не слід сприймати як рекомендацію не використовувати їх. Якщо вони працюють на вас, будь ласка, продовжуйте використовувати їх у своєму додатку!
Ми віддаляємось від них (наприклад, ми не навчаємо їх на курсі Udacity), тому що вони виставляють глобальний простір імен ідентифікаторів, який не пов’язаний із макетом, який насправді завищений без перевірок на недійсні пошуки, лише для Kotlin не викриває дозвільність, коли подання наявні лише в певній конфігурації. Разом із цими проблемами API збільшує кількість збоїв у роботі програм для Android.
З іншого боку, вони пропонують легкий API, який може спростити пошук подань. У цьому просторі також варто поглянути на прив'язку даних, яка також виконує автоматичні перегляди переглядів, а також інтегрується з LiveData для автоматичного оновлення переглядів при зміні даних.
Сьогодні в цьому просторі є кілька варіантів, які працюють:
Прив’язка даних - це рекомендація щодо пошуку подань, а також прив’язки, але це додає трохи накладних витрат у порівнянні з Android Kotlin Extensions. Варто поглянути, чи підходить це для вашого додатка. Прив’язка даних також дозволяє спостерігати за LiveData для автоматичного прив’язки подань при зміні даних. У порівнянні з Kotlin Extensions, він додає перевірку часу компіляції перегляду перегляду та безпеки типу. Розширення Android Kotlin офіційно не рекомендується (що не те саме, що рекомендація проти). Він поставляється із зазначеними вище проблемами, тому для нашого коду ми їх не використовуємо. Butter Knife - ще одне рішення, яке надзвичайно популярне і працює як для Kotlin, так і для мови програмування Java. Читання коментарів тут, там ' Багато розробників, яким пощастило з Kotlin Extensions. Це чудово - і те, про що ми матимемо на увазі, коли ми розглядаємо шляхи подальшого вдосконалення наших API. Якщо ви ще не заглянули в прив'язку даних, однозначно спробуйте.
Окрім того, наш внутрішній посібник зі стилю коду не призначений для безпосереднього застосування за межами нашої кодової бази. Наприклад, ми використовуємо mPrefixVariables, але немає жодної причини, щоб кожна програма мала дотримуватися цього стилю.