Шаблон SwiftUI Flow Coordinator с NavigationStack для координации навигации между представлениями (iOS 16 +)
В прошлом году я написал статью о применении паттерна Flow Coordinator в SwiftUI с использованием NavigationView и NavigationLink. На последней конференции WWDC компания Apple представила в iOS 16 новую навигацию с использованием NavigationStack, которая предоставляет больше возможностей. Поэтому я решил обновить предыдущую статью и применить новые инструменты, предлагаемые SwiftUI, для реализации паттерна Flow Coordinator.
https://medium.com/macoclock/swiftui-flow-coordinator-pattern-with-navigationstack-to-coordinate-navigation-between-views-ios-1a2b6cd239d7
#ios
👉 @developer_mobila
В прошлом году я написал статью о применении паттерна Flow Coordinator в SwiftUI с использованием NavigationView и NavigationLink. На последней конференции WWDC компания Apple представила в iOS 16 новую навигацию с использованием NavigationStack, которая предоставляет больше возможностей. Поэтому я решил обновить предыдущую статью и применить новые инструменты, предлагаемые SwiftUI, для реализации паттерна Flow Coordinator.
https://medium.com/macoclock/swiftui-flow-coordinator-pattern-with-navigationstack-to-coordinate-navigation-between-views-ios-1a2b6cd239d7
#ios
👉 @developer_mobila
👍2❤1
Как отладить рекомпозицию Jetpack Compose с помощью логирования?
Каков наилучший способ отладки рекомпозиции Jetpack Compose? Точки останова в отладчике, стандартное протоколирование (т.е. Log.d) или нам нужно пользовательское протоколирование?
https://vtsen.hashnode.dev/how-to-debug-jetpack-compose-recomposition-with-logging
#Android
👉 @developer_mobila
Каков наилучший способ отладки рекомпозиции Jetpack Compose? Точки останова в отладчике, стандартное протоколирование (т.е. Log.d) или нам нужно пользовательское протоколирование?
https://vtsen.hashnode.dev/how-to-debug-jetpack-compose-recomposition-with-logging
#Android
👉 @developer_mobila
👍1
Инструмент отладки, который вы (вероятно) не используете
Сколько раз вы печатаете что-то в консоли? Если проект, над которым вы работаете, требует много времени на компиляцию, "отладка печати" может быть довольно медленной. В этой небольшой статье я хочу показать вам, как можно печатать без пересборки приложения.
https://medium.com/@davit.k/debugging-tool-you-probably-are-not-using-5c61ac7781aa
#ios
👉 @developer_mobila
Сколько раз вы печатаете что-то в консоли? Если проект, над которым вы работаете, требует много времени на компиляцию, "отладка печати" может быть довольно медленной. В этой небольшой статье я хочу показать вам, как можно печатать без пересборки приложения.
https://medium.com/@davit.k/debugging-tool-you-probably-are-not-using-5c61ac7781aa
#ios
👉 @developer_mobila
Medium
Debugging tool you (probably) are not using
Helpful simple Xcode shortcuts that will save you a ton of time.
👍1
Migrate from MVVM to MVI
https://proandroiddev.com/migrate-from-mvvm-to-mvi-f938c27c214f
#Android
👉 @developer_mobila
https://proandroiddev.com/migrate-from-mvvm-to-mvi-f938c27c214f
#Android
👉 @developer_mobila
👍2❤1
6 шаблонов проектирования, которые должен знать каждый разработчик Android
https://medium.com/@naeem0313/6-design-patterns-every-android-developer-must-know-a1ae0954bf21
#Android
👉 @developer_mobila
https://medium.com/@naeem0313/6-design-patterns-every-android-developer-must-know-a1ae0954bf21
#Android
👉 @developer_mobila
Medium
6 Design Patterns Every Android Developer Must Know
A design pattern is a general, repeatable solution to a commonly occurring problem in software design. Design patterns provide a way to…
👍2
Введение в Actors в Swift: Истоки и предпосылки
Иногда аудитория думает, что Actors - это относительно новая концепция программирования, которая приобрела популярность в последние годы благодаря своей способности упрощать параллельное программирование. Но Actors были впервые представлены Карлом Хьюиттом в 1970-х годах как способ управления параллелизмом в распределенных системах.
https://tgomareli.medium.com/introduction-to-actors-in-swift-origins-and-background-3e268f3d4948
#ios
👉 @developer_mobila
Иногда аудитория думает, что Actors - это относительно новая концепция программирования, которая приобрела популярность в последние годы благодаря своей способности упрощать параллельное программирование. Но Actors были впервые представлены Карлом Хьюиттом в 1970-х годах как способ управления параллелизмом в распределенных системах.
https://tgomareli.medium.com/introduction-to-actors-in-swift-origins-and-background-3e268f3d4948
#ios
👉 @developer_mobila
👍1
Jetpack Compose — Respect the contract of Modifiers
https://blog.protein.tech/jetpack-compose-respect-the-contract-of-modifiers-ecbbe8ce03db
#Android
👉 @developer_mobila
https://blog.protein.tech/jetpack-compose-respect-the-contract-of-modifiers-ecbbe8ce03db
#Android
👉 @developer_mobila
Medium
Jetpack Compose — Respect the contract of Modifiers
The do’s and don’ts of Modifiers
This media is not supported in your browser
VIEW IN TELEGRAM
17–18 июня Яндекс проводит Weekend Offer Mobile
Всего за 2 дня можно пройти все технические секции и попасть в проект, который покажется самым интересным. Ищем крутых мобильных разработчиков на iOS, Android и Flutter с опытом от 3 лет.
Предлагаем работу в любом офисе в России и Беларуси. Некоторые команды приглашают в наши хабы в Армении, Казахстане и Сербии.
Заявки принимаем до 12 июня.
Подробности ищите здесь
Всего за 2 дня можно пройти все технические секции и попасть в проект, который покажется самым интересным. Ищем крутых мобильных разработчиков на iOS, Android и Flutter с опытом от 3 лет.
Предлагаем работу в любом офисе в России и Беларуси. Некоторые команды приглашают в наши хабы в Армении, Казахстане и Сербии.
Заявки принимаем до 12 июня.
Подробности ищите здесь
Merge, CombineLatest, and Zip: Comparing Operators of Combine for iOS
https://holyswift.app/what-is-the-difference-between-merge-combinelatests-and-zip-using-combine-in-swift/
#ios
👉 @developer_mobila
https://holyswift.app/what-is-the-difference-between-merge-combinelatests-and-zip-using-combine-in-swift/
#ios
👉 @developer_mobila
👍2
Шаблон заголовка в Xcode для Swift Package
Если вы используете пакет Swift, то при создании нового файла возникают две досадные проблемы.
Проблема 1: Отсутствие шаблона заголовка
Проблема 2: Не запрашивается имя файла
https://samwize.com/2023/02/28/xcode-header-template-for-swift-packages/
#ios
👉 @developer_mobila
Если вы используете пакет Swift, то при создании нового файла возникают две досадные проблемы.
Проблема 1: Отсутствие шаблона заголовка
Проблема 2: Не запрашивается имя файла
https://samwize.com/2023/02/28/xcode-header-template-for-swift-packages/
#ios
👉 @developer_mobila
👍1
Как уменьшить размер Android приложения
00:00 Вступление
00:40 Размер Android приложения
01:32 AvitoTech
02:12 Картинки
06:22 Шрифты
08:20 Поддерживаемые конфигурации для ресурсов
09:09 Дублирование ресурсов
09:41 Оптимизация через Tint
10:16 Удаление неиспользуемых ресурсов из проекта
11:49 Оптимизации кода
15:54 Удаление мусора в сборке
16:51 Сравнение размеров APK
17:38 Заключение
https://www.youtube.com/watch?v=ZNqwXg7vDFY
#Android
👉 @developer_mobila
00:00 Вступление
00:40 Размер Android приложения
01:32 AvitoTech
02:12 Картинки
06:22 Шрифты
08:20 Поддерживаемые конфигурации для ресурсов
09:09 Дублирование ресурсов
09:41 Оптимизация через Tint
10:16 Удаление неиспользуемых ресурсов из проекта
11:49 Оптимизации кода
15:54 Удаление мусора в сборке
16:51 Сравнение размеров APK
17:38 Заключение
https://www.youtube.com/watch?v=ZNqwXg7vDFY
#Android
👉 @developer_mobila
YouTube
Как уменьшить размер Android приложения
Лучшие практики по уменьшению размера Android приложения
🔗 Технологии и вакансии AvitoTech https://cutt.ly/X7w1vvC
🔗 Telegram канал "Android Broadcast" https://ttttwww.tg-me.com/android_broadcast
💰 Поддержать проект на Boosty https://boosty.to/androidbroadcast…
🔗 Технологии и вакансии AvitoTech https://cutt.ly/X7w1vvC
🔗 Telegram канал "Android Broadcast" https://ttttwww.tg-me.com/android_broadcast
💰 Поддержать проект на Boosty https://boosty.to/androidbroadcast…
How to Create Custom Redacted Effects on Widgets
https://swiftsenpai.com/development/widget-custom-redacted-effects/
#ios
👉 @developer_mobila
https://swiftsenpai.com/development/widget-custom-redacted-effects/
#ios
👉 @developer_mobila
Чем занимается Android-разработчик, или Хватит уже спрашивать у них алгоритмы
Статья поделена на две части — в первой я описываю работу в команде и какие навыки для этого нужны, во второй части расскажу, что нужно для создания новой функциональности в приложении или для исправления старого. Иначе говоря, первая часть про людей, вторая — про код.
https://habr.com/ru/companies/yandex_praktikum/articles/726540/
#Android
👉 @developer_mobila
Статья поделена на две части — в первой я описываю работу в команде и какие навыки для этого нужны, во второй части расскажу, что нужно для создания новой функциональности в приложении или для исправления старого. Иначе говоря, первая часть про людей, вторая — про код.
https://habr.com/ru/companies/yandex_praktikum/articles/726540/
#Android
👉 @developer_mobila
👍3
Оптимизация Compose
Серёжа Чумиков рассказал об оптимизациях Compose, которые помогут избежать огромного количества лишних рекомпозиций.
00:00 Вступление
00:38 Skippable-функции
02:41 Stable/unstable типы в Compose
08:31 Эквивалентность
11:04 @ Stable-функции
12:32 Обращение к вложенным полям data class
15:14 Подведение итогов 1 части "Рекомпозиция"
18:18 Списки stable/unstable функций и классов
19:45 Вопросы по первой части
30:15 2 часть. MutableState
34:05 Уровень рекомпозиции. Inline @ Composable фунции
37:28 Делегат vs value-поле
40:08 LaunchedEffect vs SnapshotFlow и derivedStateOf()
49:08 Захват параметров лямбдой
52:20 State как параметр @ Composable
56:25 Вопросы по 2 части
59:03 Разбор примера Осипа
https://youtu.be/OWSSu8CkhY4
#Android
👉 @developer_mobila
Серёжа Чумиков рассказал об оптимизациях Compose, которые помогут избежать огромного количества лишних рекомпозиций.
00:00 Вступление
00:38 Skippable-функции
02:41 Stable/unstable типы в Compose
08:31 Эквивалентность
11:04 @ Stable-функции
12:32 Обращение к вложенным полям data class
15:14 Подведение итогов 1 части "Рекомпозиция"
18:18 Списки stable/unstable функций и классов
19:45 Вопросы по первой части
30:15 2 часть. MutableState
34:05 Уровень рекомпозиции. Inline @ Composable фунции
37:28 Делегат vs value-поле
40:08 LaunchedEffect vs SnapshotFlow и derivedStateOf()
49:08 Захват параметров лямбдой
52:20 State как параметр @ Composable
56:25 Вопросы по 2 части
59:03 Разбор примера Осипа
https://youtu.be/OWSSu8CkhY4
#Android
👉 @developer_mobila
👍2
iOS Conf SG 2023
Man vs Machine: Can ChatGPT write better SwiftUI than you? - iOS Conf SG 2023
Your Brain 🧠 on Swift Concurrency - iOS Conf SG 2023
Shipping Side Projects in 2-2-2 Easy Steps - iOS Conf SG 2023
Making the Most Out of Swift - iOS Conf SG 2023
Все видео https://www.youtube.com/playlist?list=PLED4k3CZkY9RBYTMNziVhwXGepdcUIz8B
#ios
👉 @developer_mobila
Man vs Machine: Can ChatGPT write better SwiftUI than you? - iOS Conf SG 2023
Your Brain 🧠 on Swift Concurrency - iOS Conf SG 2023
Shipping Side Projects in 2-2-2 Easy Steps - iOS Conf SG 2023
Making the Most Out of Swift - iOS Conf SG 2023
Все видео https://www.youtube.com/playlist?list=PLED4k3CZkY9RBYTMNziVhwXGepdcUIz8B
#ios
👉 @developer_mobila
👍1
Исследование https-трафика мобильного приложения
Обычно я такими непотребствами не занимаюсь и уважаю частную жизнь приложений. Однако на днях мне довелось исследовать одно мобильное приложение написанное индусом в метро под iOS, а затем адаптированное под Android пьяным студентом «в комнате раздумий». Все действия выполнялись с целью дебага и понимания оптимальных условий для работы. Само приложение мы анализировать не будем, но подготовим среду для проведения исследований.
https://habr.com/ru/articles/728206/
#ios
👉 @developer_mobila
Обычно я такими непотребствами не занимаюсь и уважаю частную жизнь приложений. Однако на днях мне довелось исследовать одно мобильное приложение написанное индусом в метро под iOS, а затем адаптированное под Android пьяным студентом «в комнате раздумий». Все действия выполнялись с целью дебага и понимания оптимальных условий для работы. Само приложение мы анализировать не будем, но подготовим среду для проведения исследований.
https://habr.com/ru/articles/728206/
#ios
👉 @developer_mobila