3 устаревших технологии в разработке Андроид в 2022 году

Число разработок для Android растет в геометрической прогрессии, и Google предлагает создателям приложений новые инструменты и технологии. Старые постепенно отживают свое, и в 2022 году будут использоваться все реже.

Android View

Разработчики Android для создания пользовательских интерфейсов чаще всего используют XML-разметку. Android View позволяет классам Activity и Fragment не сообщаться непосредственно с View-кодом.

Но здесь есть нюансы. Для взаимодействия между разными View необходим код в Activity, управляющий всем. Иногда внутри получается нагромождение кода.

В качестве альтернативы Android View создан Jetpack Compose. В нем компоненты взаимодействуют между собой перекрестно. Управление может осуществляться Composable-функциями. К ним подключается компонент ViewModel, уменьшая значение классов Activity/Fragment. Jetpack Compose стал активно использоваться во многих приложениях с осени 2021 года.

LiveData

Несколько лет назад Google анонсировал набор решений Architecture Component для Андроид-разработчиков: появился шаблон проектирования MVVM. Технология ViewModel на тот момент была недоработана, но спустя 2 года появилась функция SavedStateHandler. Она позволяла ViewModel сохранять и восстанавливать свое состояние на каждом экране. Андроид-приложения стали использовать держатель данных LiveData для межуровневых связей.

В последнее годы в Android-приложениях чаще используются корутины Kotlin и StateFlow в роли связующего между разными уровнями архитектуры вместо LiveData.

StateFlow открывает доступ к большому числу операций преобразования данных, обеспечивает беспрепятственность между потоками. Google-команда оказывает поддержку расширению, принимая новые функции StateFlow для его полной интеграции в Android. Судя по текущей тенденции, StateFlow будет использоваться чаще, а LiveData все меньше — только для отдельных работ.

Activity Lifecycle API

Activity имеют множество API-интерфейсов жизненного цикла, которые позволяют обрабатывать события в отдельных жизненных циклах Activity, но требуют слишком много кода. Activity/Fragment становятся центром управления определенного экрана или представления, что создает множество препятствий для разработчиков, к примеру, усложняет тестирование.

Google взял направление на постепенный отказ от Activity. С появлением Architecture Component компания доработала ViewModel, которая теперь выживает при изменении конфигурации. Представлен класс Lifecycle, перехватывающий события жизненного цикла любым классом по мере потребности. Код в Activity Lifecycle API становится ненужным.

С появлением корутин Lifecycle Aware Coroutine будет возможность останавливать действие при переходе Activity в background-активность и возобновлять — при выводе экрана из фонового режима.

Команда NIX Solutions — одни из лучших разработчиков для iOS/Android по версии The Manifest, Clutch и Mobile App Daily — успешно реализовали более 5000 проектов. Отзывы о работе специалистов, а также список компетенций собраны на сайте NIX Solutions reviews.



подпишитесь на нас в Дзен