Data Binding
Гугл форсит этот подход и говорит, что надо всем переходить на него.
Я не совсем согласен, Data Binding при неправильном использовании может принести кучу ошибок во время сборки. Да и при правильном использовании, на самом деле..
▫️Data Binding работает на основе кодогенерации, которая довольно часто ломается, неправильно кешируется, приходится пересобирать проект, что дополнительно отнимает время.
▫️Выводим логику в XML — в целом, так быть не должно. View-слой должен брать на себя функцию отображения, а если в нём будет лежать логика- это уже плохо.
▫️Недавно ко мне прилетел проект. Жирный и вкусный, но с косяками в Data Binding из-за неправильного использования. По результатам, View отображался из двух источников, т.к., изначальный разработчик накосячил, прикрутил Data Binding и поломал логику. Что привело к багам, и к долгому поиску ошибки.
🖇 Моё мнение на счёт этой ситуации. Не то, чтобы я отговариваю от работы с Data Binding — просто с ним надо уметь работать и выносить логику во View-модель.
Гугл форсит этот подход и говорит, что надо всем переходить на него.
Я не совсем согласен, Data Binding при неправильном использовании может принести кучу ошибок во время сборки. Да и при правильном использовании, на самом деле..
▫️Data Binding работает на основе кодогенерации, которая довольно часто ломается, неправильно кешируется, приходится пересобирать проект, что дополнительно отнимает время.
▫️Выводим логику в XML — в целом, так быть не должно. View-слой должен брать на себя функцию отображения, а если в нём будет лежать логика- это уже плохо.
▫️Недавно ко мне прилетел проект. Жирный и вкусный, но с косяками в Data Binding из-за неправильного использования. По результатам, View отображался из двух источников, т.к., изначальный разработчик накосячил, прикрутил Data Binding и поломал логику. Что привело к багам, и к долгому поиску ошибки.
🖇 Моё мнение на счёт этой ситуации. Не то, чтобы я отговариваю от работы с Data Binding — просто с ним надо уметь работать и выносить логику во View-модель.