Набор инструментов Google Jetpack Compose UI Toolkit теперь в бета-версии


Google запустил бета-версию Jetpack Compose, нового набора инструментов пользовательского интерфейса, который призван упростить и ускорить создание собственных приложений для Android. Разработчики говорят, что Compose предлагает современные декларативные API-интерфейсы Kotlin, которые можно использовать для создания «красивых, отзывчивых приложений с гораздо меньшим количеством кода».

Jetpack Compose изначально был развернут как часть компонентов архитектуры Google, чтобы очистить и освежить способы разработки для Android. Впоследствии он зарекомендовал себя как новый и стандартный способ создания приложений с графическим интерфейсом пользователя на платформе. Эта попытка очистки не прошла без оттока, как мы описали в Android Jetpack Compose — приветствуется, но как насчет оттока?
Еще в сентябре 2020 года я рассмотрел недавно представленный инструментарий пользовательского интерфейса в его альфа-версии. Он много обещал. Обратная совместимость со «старыми» базами кода пользовательского интерфейса на основе представлений, возможность написания значительно меньшего количества кода пользовательского интерфейса декларативным способом и облегчение миграции.
Альфа-версия включала:

Анимации
Макет ограничения
Первоначальная поддержка A11Y
Ввод и жесты
Взаимодействие с представлениями (начните смешивать составные функции в существующем приложении)
Ленивые списки
Материальные компоненты пользовательского интерфейса
Оптимизация производительности
Тестирование
Текст и редактируемый текст
Тематика и графика
Управление окнами

Текущая бета-версия улучшила эти функции, но также добавила новые:

Поддержка сопрограмм
Поддержка специальных возможностей для Talkback
Простая в использовании анимация с совершенно новым API, появившимся в альфа-версии.
Макет ограничений на основе DSL
Модификаторы
Тематика и графика с простой поддержкой темного и светлого режимов
Ввод и жесты

Бета-версия считается настолько стабильной, что с ее помощью можно писать готовые приложения. Кроме того, Google сообщает, что отныне не будет удаления API-интерфейсов, а будет только добавление новых и улучшение существующих. Другими словами, это открытое приглашение к Начните разработку на новой платформе. Для этого также требуется последняя версия Canary для Android Studio Arctic Fox, которая включает новые шаблоны проектов, которые помогут вам начать работу с Compose.
Из официального объявления беру одно:
Compose заботится об обновлении вашего пользовательского интерфейса при изменении состояния приложения, поэтому вам не нужно переводить пользовательский интерфейс в желаемое состояние, что может быть утомительным и подверженным ошибкам.
Довольно важный отход от мира фрагментов и утечек памяти.
Еще одно отклонение от прошлого заключается в том, что Compose предназначен только для Kotlin, что, с одной стороны, позволяет использовать все современные функции Kotlin, такие как Coroutines. С другой стороны, это означает, что с этого момента вам нужно перейти на Kotlin, Java больше не будет работать.
Также в ноябре и декабре я проверил родственный проект Jetpack Compose Desktop от Jetbrains, который основан на Google Compose, с целью обеспечить широкое совместное использование кода пользовательского интерфейса между Android и настольными приложениями — например, большие части кода пользовательского интерфейса, написанного для Android, могут быть используется, скажем, в Windows, без проблем. Это совместное использование кода происходит через мультиплатформенный SDK Kotlin.
Таким образом, в игре есть несколько компонентов, которые вместе составляют видение Google будущего для платформы Android и не только. Kotlin язык, Kotlin Multiplatform, Jetpack, Compose и Compose Desktop.
Конечно, без надежной документации все было бы бесполезно. Google знает об этом факте, поэтому вместе с официальным объявлением о бета-версии он также обновил всю соответствующую документацию и способы обучения, добавив видеоролики, практические кодовые таблицы и руководства.
Довольно захватывающе. А теперь давайте продолжим!


Добавить комментарий