Записки разработчицы
1.89K subscribers
370 photos
23 videos
4 files
1.08K links
Разговоры об IT, о разработке. О мобилках нативных и кроссплатформенных.
Личный аккаунт @azharkova
Download Telegram
Forwarded from Android Live 🤖
​​Jetpack Compose — Live coding сессия
#compose #youtube

Друзья, уже сегодня, 21 декабря в 18:30 мы с вами погрузимся в мир Jetpack Compose и создадим рабочее приложение.

По ходу сессии вы сможете задать вопросы нашему гостю Григорьеву Дмитрию, автору канала Jetpack Compose.

Напоминаю, что мы с вами рассмотрим:🔹
🔹как лучше строить архитектуру;
🔹как делать списки из разных типов view;
🔹что делать с навигацией между разными экранами;
🔹как сделать анимации;
🔹что делать с текущими приложениями;
🔹и много другое.

Ссылка на трансляцию тут.
#AndroidBroadcast #Compose #Kotlin #KMP

🔴 Decompose. Компонентизация и навигация в Kotlin Multiplatform
Начало 17 июня в 19:00 (GMT+3)

Сегодня в прямом эфире Аркадий Иванов расскажет о своей библиотеки Decompose - мультиплатформенная библиотека для компонентизации и навигации. Вы узнаете как устроена библиотека, как она работает, и увидите livecoding использования.

Эксперт - Аркадий Иванов, Kotlin GDE. Автор библиотек MVIKotlin, Decompose, Reaktive и активно развивает Jetpack Compose и Kotlin Multiplatform.
#compose

Compose Multiplatform goes Alpha, unifying Desktop, Web, and Android UIs

👉 Compose Desktop и Web перешли в альфу
👉 Унификация разработки Desktop, Web и Android UI
👉 Релиз 1.0 собираются сделать в этом (2021) году
👉 Новые плагины для IDEA и Android Studio для Compose Multiplatform

Что нового в Compose Desktop:
👉 Composable Window APIs теперь используется по умолчанию
👉 Адаптивный размер окна
👉 Новые фичи для меню окон
👉 Поддержка контекстных меню
👉 Изменение поведения курсор и API для иконки курсора
👉 Модификатор Mouse Clickable
👉 Унификация ресурсов графики
👉 Поддержка Linux ARM64
Forwarded from Android Broadcast
#AndroidBroadcast #Android12 #Compose

Android 12 Митап, организованный Google Россия и Android Broadcast
Когда: 21 сентября, 18:00-21:30

Совсем скоро выйдет новая версия ОС Android 12, а Jetpack Compose 1.0 уже stable. Мы позвали экспертов, чтобы рассказать нам об изменениях, будущем и гуглеров, которые ответят на вопросы:
👉 18:00 - 18:25 Что нового в Android 12, Анна Жаркова, Lead mobile developer, Usetech
👉 18:30 - 18:55 Android 12 Q&A, Murat Yener, Android Developer Advocate в Google
👉 19:00 - 19:20 На что способен Jetpack Compose, Алексей Гладков, Технический архитектор, Леруа Мерлен
👉 19:30 - 20:30 Jetpack Compose Q&A, Матвей Мальков, разработчик в команде Jetpack Compose, Google

* Записи всех докладов будут доступны на канале после мероприятия

Также у вас будет возможность выиграть книгу от Chet Hasse с его автогрофом (да-да, книжки едут из США)
Что почитать: Jetpack Compose Internals

Если вместо разрозненной документации вы предпочитаете книги, где вся информация собрана в одном месте, то советуем обратить внимание на книгу Jetpack Compose Internals.

В книге исследуются возможности Jetpack Compose — UI-фреймворка будущего Android-разработки. Также в ней рассмотрены различные кейсы использования Compose за пределами экосистемы Android.

И самое главное — книгу можно забрать бесплатно на официальном сайте.

#compose #android
#compose #kmp

Compose Multiplatform 1.0 Beta 01

В этом году нам пообещали Compose Multiplatform 1.0 Stable, так вот походу всё правда. Уже готовится первая Beta с поддержкой Android, Desktop и Web.
Forwarded from Android Broadcast
#compose

Compose Destinations - это KSP библиотека, которая на основе аннотаций генерирует код. Под капотом используется Jetpack Navigation для Compose, чтобы спрятать весь рутинный код, который придется писать руками.
👍3
Forwarded from Android Broadcast
#compose

Learn Android with Jetpack Compose (no programming experience needed!)

Google запускает бесплатный англоязычный курс "Android Basics with Compose", которые предназначен для людей без знаний Android разработки и языков программирования.

Ну вот и положено начало программистам, которые не будут знать про View и RxJava. Не переживайте, курс на основе View "Android Basics in Kotlin course" никуда не пропадет.
1
Forwarded from Kotlin Multiplatform Broadcast (Кирилл Розов)
Compose Multiplatform уже на iOS в Альфе и на официальном блоге добавили пост с основной инфой: связь с Jetpack Compose, интероп со SwiftUI и UIKit и др.

Начать с Compose for iOS можно тут

📺 Видео доклад с KotlinConf'23 (45 мин)

#compose #ios #kmm
👍9🤡1
Forwarded from Mobile Compose
​​#Release #Compose #Changelog

Compose Release Digest (19.04 — 02.06)

Традиционный дайджест по основным изменениям релизов библиотек фреймворка за последние полтора месяца, среди которых:

🔹RC/Stable🔹

🔸🔸Compose Compiler (1.4.6 — 1.4.7)
▫️Добавлена поддержка версии Kotlin 1.8.21.
▫️Требуемая версия Java понижена с 17 до 11.
🔸🔸Compose Animation/Foundation/Material/Runtime/UI (1.4.2 — 1.4.3)
▫️Исправлена проблема, при которой AndroidView мог отображаться неверно при использовании с некоторыми модификаторами. (Подробнее)
▫️Исправлен баг, из-за которого клавиатура не отображалась для текстовых полей внутри диалогов, не созданных через Dialog composable. (Подробнее)

🔹Alpha/Beta🔹

🔸🔸Compose Animation/Foundation/Material/Runtime/UI (1.5.0-alpha03 — 1.5.0-beta01)
▫️Изменено дефолтное поведение SubcomposeLayout в LookaheadScope, внутри которого нет условных slot-блоков (как TabRow, Scaffold или BoxWithConstraints), что позволяет ему лучше работать с lookahead анимациями.
▫️В AnimatedContent добавлена поддержка contentKey. (Подробнее)
▫️В ходе рефакторинга значительно сокращено количество выделений памяти в рекомпозиции, анимациях и AndroidComposeView. (Подробнее)
▫️FlowColumn/FlowRow теперь inline. (Подробнее)
▫️LazyStaggeredGrid API теперь stable. (Подробнее)
▫️Добавлены FlowRowScope и FlowColumnScope для дочерних элементов FlowRow и FlowColumn соответственно. (Подробнее)
▫️Добавлен экспериментальный модификатор Modifier.animateItemPlacement() для анимирования изменения/переупорядочивания позиций элементов при работе с LazyStaggeredGrid. (Подробнее)
▫️В BasicText добавлен отдельный лямбда-параметр color. Спорное решение, но, по заявлению разработчиков, это позволит эффективнее задавать цвет текста, а также его анимировать. (Подробнее)
▫️В методы DrawScope.drawText, Paragraph.paint и MultiParagraph.paint добавлен параметр BlendMode для поддержки различных алгоритмов смешивания при рисовании текста на Canvas. (Подробнее).
▫️TextMeasurer и связанные с ним API больше не являются экспериментальными. (Подробнее).
... и много всего ещё.

Также были обновлены и различные дополнения Compose, а именно:

▫️constraintlayout-compose обновлен до версии 1.1.0-alpha10
▫️Compose для Wear, а также дополнения compose-material и compose-navigation для него обновлены до версий 1.0.0-alpha05 и 1.2.0-beta01
▫️Paging-Compose обновлен до версии 1.0.0-alpha20
▫️Compose Material 3 (Material You) обновлен до версии 1.2.0-alpha02
7👍3
Forwarded from Kotlin Adept Notes (Alex Panov)
Что выбрать для навигации в Compose🤨

Это довольно распространенный вопрос и на сегодняшний день выбор либ просто огромен на любой вкус и цвет. Так что же выбрать? Конечно же Decompose решать вам на основе требований к навигации в вашем приложении.

🤖 Jetpack Compose Navigation — официальная библиотека
👍 Поддержка от Google, интеграция с ViewModel
👎Только для Android и еще миллион минусов

🤖 Jetpack Compose Destinations — обертка над официальной либой
👍 Решает некоторые проблемы первой либы
👎 Добавляет новых проблем из-за кодогенерации и зависимости на accompanist либы

🤖 Modo — либа от создателя Cicerone, Константина Цховребова
👍 Строится на принципах UDF, очень простая
👎 Только для Android, еще не в релизе, маленькое коммьюнити

👩‍💻 Appyx — решение для навигации от Bumble
👍 Декларативный подход, классные анимации из коробки, поддержка KMP
👎 Только для Compose, довольно сложная, небольшое коммьюнити

👩‍💻 Voyager — популярная и простая либа для навигации
👍 Много интеграций с привычными инструментами, легкая в использовании, поддержка KMP
👎 Только для Compose, есть проблемы со стабильностью

🌳 Decompose — либа от Аркадия Иванова, автора MVICore
👍 Единственное решение не завязанное на UI фреймворк, декларативный подход, огромная гибкость, высокая стабильность
👎 Высокий порог входа, приходится писать много кода

Есть еще решение Odyssey от Алексея Гладкова, но автор объявил о прекращении поддержки данной либы.

Таким образом настоятельно не рекомендую использовать официальное решение для навигации в любых более менее сложных приложениях. Можете посмотреть мой доклад, где я сравниваю эту либу и Decompose. Другие либы можно смело у себя использовать, но если вы проникнетесь подходом к навигации в Decompose, то можете посмотреть другой доклад, где уже разбираю как интегрироваться не только с Compose, но и SwiftUI.

Как вы поняли, я очень топлю за Decompose, хотя его сложность может многих отпугнуть, но стоит только проникнуться компонентым подходом и уже по-другому приложения писать не захочется!

#Compose #Navigation
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18
#compose Один из острых моментов при миграции на Compose - это правильно устроенная навигация. В статье как раз приходится набор полезных практик:
Forwarded from Compose Broadcast
‼️ Jetpack Compose компилятор переехал в Kotlin репозиторий

Точнее это случится с релизом Kotlin 2.0. Это значит что вместе с релизом новой версии Kotlin сразу будет релизится Compose компилятор и не придется ждать обновлений из Jetpack.

❗️ Теперь версия Compose компилятора теперь будет такая же как у Kotlin. Артефакт androidx.compose.compiler:compiler заменят на org.jetbrains.kotlin:kotlin-compose-compiler-plugin-embeddable

📦 Новый Compose Compiler Gradle плагин (раньше был частью Android Gradle Plugin) позволит быстро настроить фреймворк в вашем проекте. Пример миграции тут

Больше подробностей в обновленной документации

#compose #kotlin #k2

Больше про Compose в @compose_broadcast
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍2
Forwarded from Compose Broadcast
Вышел Compose Compiler 1.5.13. Режим Strong Skipping теперь больше не является экспериментальным и в следующем релизе станет поведением по умолчанию

Strong Skipping Mode - делает менее строгой проверки на изменение данных что приводит к меньшему числу рекомпозиций.

#compose #производительность
👍6
Forwarded from Compose Broadcast
Вышел официальный анонс Compose 1.6.10:
👉 Compose iOS Alpha ➡️ Beta
👉 Compose Web Experimental ➡️ Alpha
👉 Мультиплатформенное API ресурсов теперь Stable
👉 Экспериментальные библиотеки Jetpack Navigation, Lifecycle и ViewModel для KMP
👉 Поддержка Kotlin 2.0
👉 Отдельный Gradle плагин для Compose

#compose
🔥5👍1
Forwarded from Android Broadcast
Вышел Glance 1.1.0 - создание App Widget для Android и Tile для Google WearOS на Compose

Что нового:
👉 Библиотека для Unit тестов виджетов
👉 Новые Modifier
👉 Улучшения превью виджетов в IDE
👉 Улучшения API

#android #compose #wearos
Media is too big
VIEW IN TELEGRAM
🦢 Плагин для встраивания SwiftUI в Compose

Touchlab показали Compose Swift Bridge, который сгенерирует весь необходимый код для интеграции и позволят писать UI в Compose

📹 Подробное видеоруководство (4 мин)

#touchlab #compose #swiftui #kmp
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7💩2
Forwarded from Android Broadcast
Google объвила об отказе разработки Relay - инструмента для генерации Compose кода на основе макетов в Figma. Срок закрытия поддержки - 30 апреля 2025.

Причина закрытия проекта - появление Figma Code Connect с поддержкой Compose

#compose #figma
😁11👍1
Forwarded from Compose Broadcast
⚙️ JetBrains собирает реальные примеры приложение на Compose Multiplatform, чтобы подсветить их на главной странице сайта, видео, докладах и других материалах. Подать ваше приложение можно тут

#compose
Please open Telegram to view this post
VIEW IN TELEGRAM
3