Записки разработчицы
1.89K subscribers
369 photos
23 videos
4 files
1.08K links
Разговоры об IT, о разработке. О мобилках нативных и кроссплатформенных.
Личный аккаунт @azharkova
Download Telegram
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
SDUI/BDUI становится настоящим трендом. А текущее состояние декларативных фреймворков SwiftUI и Jetpack Compose упрощает внедрение данного подхода, а также позволяет оптимизировать свои уже существующие решения.
Читаем, как создатели Epoxy AirBnb переходят на SwiftUI.
Forwarded from iOS Broadcast (Андрей Зонов)
Как Airbnb пришли к SwiftUI (10 мин, 🇺🇸)

Путь Airbnb от самописного декларативного фреймворка 🐱 Epoxi к стандарту индустрии - 😀 SwiftUI. Epoxi - фреймворк для декларативного конструирования экранов был оберткой над UIKit, потенциально даже с возможностью Backend-Driven UI. Такие задачи привлекают классных инженеров к созданию фреймворка, но 🚫 не привлекают инженеров к разработке продуктовых фич.
Главный вывод для меня - после миграции на SwiftUI стали счастливы iOS инженеры, 77% заявили что стали более эффективны.

Бизнесу достаточно легко продать BDUI, кроссплатформу, даже если это ReactNative, но это не так просто продать разработчикам, особенно в продуктовых командах.
Искренне рад за Airbnb и их инженерную команду, счастливые разработчики = качественный продукт
Please open Telegram to view this post
VIEW IN TELEGRAM
1
Началось голосование Highload Awards, где вы можете проголосвать за лучший проект/человека года.

Поддержите @android_broadcast и @mobiledevnews
6👍2
Залетайте на наши треки на омском Девфесте. Обещаем, будет интересно)
Forwarded from ДевФест
Знакомим вас с программой трека iOS 🤗
Смотрите доклады в слайдере

Сайт с программой
Купить билет
🔥1
#softskill На канале Crossconf начали выкладывать видео выступлений. Хотя я выступала на секции Mobile crossplatform, сама ходила слушать другие секции. Хочу поделиться видео наиболее понравившихся:

Проблемы с эмпатией у подчиненных — что делать? // Серафима Чекулаева
https://www.youtube.com/watch?v=dpFA4pqNafE

Особенности проектирования под ОС Аврора // Марина Салова, МойОфис
https://youtu.be/yATa3FnS53w?si=evRO_evxyD5RC1bY

Тимлидский рентген: как разглядеть потенциал своей команды и выпустить его наружу // Илья Прахт
https://www.youtube.com/watch?v=mCkBfXz7GXo

Как Midjourney может помочь в работе дизайнеру // Алина Сидоренко, Friflex
https://youtu.be/Rl-rrc54mEI?si=tGyAevumeFgxo6bG

На канале пока выложены не все видео
🔥3
#compose Один из острых моментов при миграции на Compose - это правильно устроенная навигация. В статье как раз приходится набор полезных практик:
Forwarded from Mobile Compose
#Article #Medium #Navigation

Best Practices for Compose Navigation in Multi-Module Project

Неплохая статья со списком лучших практик по организации навигации в многомодульном проекте с Compose.

Зеркало статьи 👉 тут
🔥21
Forwarded from iOS Broadcast (Андрей Зонов)
⚡️ Очень крутые новости по доработке 🐛 LLDB дебаггера Swift 5.9

Что это дает для разработчиков:
👉 Вывод переменных в консоли с помощью p и po быстрее и понятнее
👉 Поддержка Generic параметров выражений
👉 Более точное понимание скоупа выражения и переменных

Те самые изменения, которые мы, обычно не замечаем, но они значительно улучшают опыт взаимодействия с языком

* LLDB дебаггер - следующее поколение высокоэффективного дебаггера, являющегося частью LLVM проекта
🔥4
Многие попробовали Compose iOS, но не все заглядывали под капот, особенно как Алексей Гладков
2
Media is too big
VIEW IN TELEGRAM
“Каждое утро я выпиваю чашечку кофе и слушаю шоу от разработчиков из Тинькофф “Как это работает”” © Билл Гейтс

Шоу ведут Android-разработчик Кирилл Розов и iOS-разработчица Розалия Амирова, которые приглашают экспертов, чтобы поговорить про аспекты ИТ-индустрии.

Дискуссии, лайфхаки для собеседований и выпуск, где заглядываем под капот Compose Multiplatform вместе с Алексеем Гладковым ищите здесь: Compose IOS. Как это работает #0 Пилот
🔥5
Теперь с помощью синтаксического сахара и модификатора backport можно сделать код SwiftUI чище:
Forwarded from iOS Broadcast (Андрей Зонов)
В SwiftUI каждый год появляются новые ViewModifier, которые хочется использовать уже сейчас, но для сохранения обратной совместимости не понятно куда вставить if #available. Хочу поделиться с вами своим подходом к опциональным модификаторам, которые помогают подготовиться к миграции на новые API а так же добавить функциональность в те версии где это возможно

1️⃣ Создаем дженерик Wrapper Backport
2️⃣ Добавляем его к View
3️⃣ Добавляем нужную нам реализацию в Backport
4️⃣ Используем тот же ViewModifier только из backport

А как вы решаете эту задачу?
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
2