Как использовать TimelineView в SwiftUI
TimelineView в SwiftUI идеально подходит для создания сложных, многоступенчатых анимаций. В этом видео мы узнаем, как его использовать, и рассмотрим несколько различных реализаций.
00:00 Timeline
02:30 Welcome back!
03:37 Xcode 15
04:17 What is TimelineView?
06:56 Why do we need this?
08:16 Example Implementations
11:04 Customize Intervals
12:22 Real Time vs Real-Time
14:07 Pausing Animations
15:53 Timeline Cadence
17:06 Wrapping up
https://www.youtube.com/watch?v=ZmXp6Pd5Elg
#ios
👉 @developer_mobila
TimelineView в SwiftUI идеально подходит для создания сложных, многоступенчатых анимаций. В этом видео мы узнаем, как его использовать, и рассмотрим несколько различных реализаций.
00:00 Timeline
02:30 Welcome back!
03:37 Xcode 15
04:17 What is TimelineView?
06:56 Why do we need this?
08:16 Example Implementations
11:04 Customize Intervals
12:22 Real Time vs Real-Time
14:07 Pausing Animations
15:53 Timeline Cadence
17:06 Wrapping up
https://www.youtube.com/watch?v=ZmXp6Pd5Elg
#ios
👉 @developer_mobila
YouTube
How to use TimelineView in SwiftUI | Advanced Learning #26
The TimelineView in SwiftUI is perfect for making complex, multi-step animations. In this video we will learn how to use it and review a few different implementations.
🤙 WELCOME BACK 🤙
WEBSITE: https://www.swiftful-thinking.com
DISCORD: https://disco…
🤙 WELCOME BACK 🤙
WEBSITE: https://www.swiftful-thinking.com
DISCORD: https://disco…
👍1
Как я осваивал Jetpack Compose
Привет, я Михаил Селезнев, андроид-разработчик в компании 1221Systems. Поделюсь своими впечатлениями о Compose — будет интересно коллегам, которые думают о переходе на него. Расскажу, в чем были сложности и что помогло мне быстрее разобраться.
Пару слов о моем бэкграунде: я в профессии больше четырех лет, в 1221Systems пришел полтора года назад на проект по разработке большого приложения для заказа продуктов ритейлинговой сети. Проработал около года, в марте этого года перешел на другой проект — приложение для сотрудников компании.
Само приложение написано на достаточно современном стеке: MVI, Koin, Coroutines + Flow, Jetpack Compose. При этом навигация реализована на фрагментах. В onCreateView возвращаем ComposeView, где в setContent прокидываем composable функцию.
https://habr.com/ru/articles/766814/
#Android
👉 @developer_mobila
Привет, я Михаил Селезнев, андроид-разработчик в компании 1221Systems. Поделюсь своими впечатлениями о Compose — будет интересно коллегам, которые думают о переходе на него. Расскажу, в чем были сложности и что помогло мне быстрее разобраться.
Пару слов о моем бэкграунде: я в профессии больше четырех лет, в 1221Systems пришел полтора года назад на проект по разработке большого приложения для заказа продуктов ритейлинговой сети. Проработал около года, в марте этого года перешел на другой проект — приложение для сотрудников компании.
Само приложение написано на достаточно современном стеке: MVI, Koin, Coroutines + Flow, Jetpack Compose. При этом навигация реализована на фрагментах. В onCreateView возвращаем ComposeView, где в setContent прокидываем composable функцию.
https://habr.com/ru/articles/766814/
#Android
👉 @developer_mobila
Хабр
Как я осваивал Jetpack Compose
Привет, я Михаил Селезнев, андроид-разработчик в компании 1221Systems. Поделюсь своими впечатлениями о Compose — будет интересно коллегам, которые думают о переходе на него. Расскажу, в чем были...
👍2👎1
Сенсорная обратная связь в SwiftUI
https://swiftwithmajid.com/2023/10/10/sensory-feedback-in-swiftui/
#ios
👉 @developer_mobila
https://swiftwithmajid.com/2023/10/10/sensory-feedback-in-swiftui/
#ios
👉 @developer_mobila
Swift with Majid
Sensory feedback in SwiftUI
SwiftUI introduced the new sensoryFeedback view modifier, allowing us to play haptic feedback on all Apple platforms. This week, we will learn how to use the sensoryFeedback modifier to give haptic feedback on different actions in our apps.
Как мониторить здоровье вашей Gradle-сборки
Привет! Я Сергей Боиштян, Software engineer в команде Speed. Мы делаем инструменты для тестирования, андроид-разработки, CI и CD. Чтобы больше узнать о том, чем мы занимаемся, посмотрите наш github или канал для обсуждения CI и сборки под андроид.
В Авито постоянно что-нибудь обновляется, улучшается и дорабатывается, поэтому мы хотим, чтобы код быстро писался и проверялся, чтобы его быстро мёржили и проверяли после интеграции. В итоге мы получаем новую версию раз в неделю. В этой статье я расскажу, что мы делаем, чтобы весь CI работал четко.
https://habr.com/ru/companies/avito/articles/766764/
#Android
👉 @developer_mobila
Привет! Я Сергей Боиштян, Software engineer в команде Speed. Мы делаем инструменты для тестирования, андроид-разработки, CI и CD. Чтобы больше узнать о том, чем мы занимаемся, посмотрите наш github или канал для обсуждения CI и сборки под андроид.
В Авито постоянно что-нибудь обновляется, улучшается и дорабатывается, поэтому мы хотим, чтобы код быстро писался и проверялся, чтобы его быстро мёржили и проверяли после интеграции. В итоге мы получаем новую версию раз в неделю. В этой статье я расскажу, что мы делаем, чтобы весь CI работал четко.
https://habr.com/ru/companies/avito/articles/766764/
#Android
👉 @developer_mobila
👍2
Using Core Data and Swift Data side by side
Недавно я изучал, как настроить Core Data и Swift Data в NowPlaying так, чтобы они указывали на одно и то же постоянное хранилище данных, и тогда я смогу использовать оба фреймворка бок о бок.
Это полезно, если вы собираетесь перейти с Core Data на Swift Data, но хотите делать это постепенно, или если вы хотите использовать Swift Data для конкретных случаев использования в вашем приложении, таких как виджеты.
Учитывая, что Swift Data выполняет операции исключительно в главном потоке, я бы не рекомендовал полностью переходить на него, так как это негативно скажется на производительности вашего приложения, но он действительно может быть очень полезен для небольших и не затратных операций.
https://www.polpiella.dev/core-data-and-swift-data/
#ios
👉 @developer_mobila
Недавно я изучал, как настроить Core Data и Swift Data в NowPlaying так, чтобы они указывали на одно и то же постоянное хранилище данных, и тогда я смогу использовать оба фреймворка бок о бок.
Это полезно, если вы собираетесь перейти с Core Data на Swift Data, но хотите делать это постепенно, или если вы хотите использовать Swift Data для конкретных случаев использования в вашем приложении, таких как виджеты.
Учитывая, что Swift Data выполняет операции исключительно в главном потоке, я бы не рекомендовал полностью переходить на него, так как это негативно скажется на производительности вашего приложения, но он действительно может быть очень полезен для небольших и не затратных операций.
https://www.polpiella.dev/core-data-and-swift-data/
#ios
👉 @developer_mobila
www.polpiella.dev
Using Core Data and Swift Data side by side
How to set up Core Data and Swift Data to use the same data store in your app.
Использование on-demand ресурсов для безопасного хранения ключей API в iOS-приложениях
Следует помнить, что извлечь строки из файлов IPA довольно просто, и поэтому, если мы храним API-ключи в коде, кто-то другой может получить к ним доступ. Это, конечно, большая проблема для безопасности.
https://augmentedcode.io/2023/11/27/using-on-demand-resources-for-securely-storing-api-keys-in-ios-apps/
#ios
👉 @developer_mobila
Следует помнить, что извлечь строки из файлов IPA довольно просто, и поэтому, если мы храним API-ключи в коде, кто-то другой может получить к ним доступ. Это, конечно, большая проблема для безопасности.
https://augmentedcode.io/2023/11/27/using-on-demand-resources-for-securely-storing-api-keys-in-ios-apps/
#ios
👉 @developer_mobila
👍2
Swift Data Many to Many relationships
Table of Contents:
0:00 Introduction
1:10 Many to Many Relationships
1:42 The Genre Model
9:41 The GenreView
17:43 The NewGenreView
25:48 The GenreStackView
29:54 Deleting Genres
https://www.youtube.com/watch?v=lHdBkXp3j74
#ios
👉 @developer_mobila
Table of Contents:
0:00 Introduction
1:10 Many to Many Relationships
1:42 The Genre Model
9:41 The GenreView
17:43 The NewGenreView
25:48 The GenreStackView
29:54 Deleting Genres
https://www.youtube.com/watch?v=lHdBkXp3j74
#ios
👉 @developer_mobila
YouTube
6. Swift Data Many to Many relationships
This is the 6th video in the SwiftData series where I am building an app to track books you want to read, are currently reading or have read.
In this video, I will be introducing a many to many relationship so that we an create a list of genres and associate…
In this video, I will be introducing a many to many relationship so that we an create a list of genres and associate…
👍1
Готовим конфигурацию Android-приложения с помощью Dynamic Proxy и рефлексии
Android-разработчик RuStore Анатолий Гусев расскажет, как приготовить систему «холодных» конфигов для большого Android-приложения, построенного на многомодульной архитектуре. Под «холодными» конфигами здесь подразумеваются настройки приложения, которые нужно делать локально на девайсе без необходимости загружать их из сети.
https://habr.com/ru/companies/vk/articles/777874/
#Android
👉 @developer_mobila
Android-разработчик RuStore Анатолий Гусев расскажет, как приготовить систему «холодных» конфигов для большого Android-приложения, построенного на многомодульной архитектуре. Под «холодными» конфигами здесь подразумеваются настройки приложения, которые нужно делать локально на девайсе без необходимости загружать их из сети.
https://habr.com/ru/companies/vk/articles/777874/
#Android
👉 @developer_mobila
👍1
Как устроен протокол iMessage
В этом посте я вкратце расскажу о внутреннем устройстве iMessage, изученном мной в процессе работы над pypush — опенсорсным проектом воссоздания реализации iMessage.
Ради краткости и понятности я не буду вдаваться в технические подробности. Если вы хотите узнать, как конкретно всё реализовано, то изучите репозиторий pypush.
https://habr.com/ru/articles/779064/
#ios
👉 @developer_mobila
В этом посте я вкратце расскажу о внутреннем устройстве iMessage, изученном мной в процессе работы над pypush — опенсорсным проектом воссоздания реализации iMessage.
Ради краткости и понятности я не буду вдаваться в технические подробности. Если вы хотите узнать, как конкретно всё реализовано, то изучите репозиторий pypush.
https://habr.com/ru/articles/779064/
#ios
👉 @developer_mobila
👍1
👍2
Создание простого калькулятора в Android Studio
Эта статья - лабораторная работа, предназначенная для введения в android разработку. Главной целью является создание работающего мобильного приложения с базовыми функциями калькулятора.
https://habr.com/ru/articles/779464/
#Android
👉 @developer_mobila
Эта статья - лабораторная работа, предназначенная для введения в android разработку. Главной целью является создание работающего мобильного приложения с базовыми функциями калькулятора.
https://habr.com/ru/articles/779464/
#Android
👉 @developer_mobila
Хабр
Создание простого калькулятора в android studio
Эта статья - лабораторная работа, предназначенная для введения в android разработку. Главной целью является создание работающего мобильного приложения с базовыми функциями калькулятора. Теоретическая...
👍4
Перед вами — книга-метод, книга-наставник, способная перевернуть мышление и помочь выработать осознанный подход к работе и жизни в целом путём высокоуровневого планирования.
В своей второй книге IT-архитектор, методолог, педагог Александр Бындю раскрывает наиболее эффективный на сегодняшний день метод стратегического планирования, получивший название «Карта гипотез». Карта учит, как достигать намеченной цели через гипотезы, и служит навигатором на этом пути. В основу книги легли годы практики, и с уверенностью можно сказать, что Карта гипотез позволяет создать стратегию достижения для самых амбициозных целей.
У Карты гипотез нет ограничений по области применения или роли пользователя — она будет полезна в самых разных ситуациях, от личного планирования до планирования работы огромной компании. Автор надеется, что его метод, которому посвящена эта книга, послужит вашему благополучию во всех сферах жизни.
Ознакомиться с книгой
В своей второй книге IT-архитектор, методолог, педагог Александр Бындю раскрывает наиболее эффективный на сегодняшний день метод стратегического планирования, получивший название «Карта гипотез». Карта учит, как достигать намеченной цели через гипотезы, и служит навигатором на этом пути. В основу книги легли годы практики, и с уверенностью можно сказать, что Карта гипотез позволяет создать стратегию достижения для самых амбициозных целей.
У Карты гипотез нет ограничений по области применения или роли пользователя — она будет полезна в самых разных ситуациях, от личного планирования до планирования работы огромной компании. Автор надеется, что его метод, которому посвящена эта книга, послужит вашему благополучию во всех сферах жизни.
Ознакомиться с книгой
👍1
Swift Utilities — Работа со SwiftData в Background
За годы работы разработчиком iOS, я собрал множество инструментов и полезных штук, которые облегчают процесс разработки. В этой статье, я хочу поделиться одним из таких инструментов. Это будет не большая статья. Я покажу, как пользоваться этой утилитой, продемонстрирую её в действии. Надеюсь, что статья окажется полезной для вас.
SwiftData отлично функционирует внутри View: достаточно добавить декоратор @ Query к свойству, и все будет работать 'из коробки'. Однако, когда возникает желание вынести работу со SwiftData в отдельный модуль, начинают появляться сложности, особенно касаемо выполнения операций в фоновом режиме.
https://habr.com/ru/articles/779450/
#ios
👉 @developer_mobila
За годы работы разработчиком iOS, я собрал множество инструментов и полезных штук, которые облегчают процесс разработки. В этой статье, я хочу поделиться одним из таких инструментов. Это будет не большая статья. Я покажу, как пользоваться этой утилитой, продемонстрирую её в действии. Надеюсь, что статья окажется полезной для вас.
SwiftData отлично функционирует внутри View: достаточно добавить декоратор @ Query к свойству, и все будет работать 'из коробки'. Однако, когда возникает желание вынести работу со SwiftData в отдельный модуль, начинают появляться сложности, особенно касаемо выполнения операций в фоновом режиме.
https://habr.com/ru/articles/779450/
#ios
👉 @developer_mobila
Хабр
Swift Utilities — Работа со SwiftData в Background
За годы работы разработчиком iOS, я собрал множество инструментов и полезных штук, которые облегчают процесс разработки. В этой статье, я хочу поделиться одним из таких инструментов. Это будет не...
👍1
Как интегрировать Dynamic Features в Android-приложение
Разбор о влиянии Play Feature Delivery на архитектуру приложения, миграции существующих фич и выборе динамических фич. Будет интересно для всех, кто хочет узнать больше об оптимизации и развитии Android-приложений.
0:00 Вступление
1:20 Содержание
2:27 Архитектура приложений до Play Feature Delivery
4:54 Влияние Play Feature Delivery на архитектуру приложения
7:34 Интеграция AvitoTech
8:12 Миграция существующих фичей
13:18 Какая фича должна быть динамической
15:42 Заключение
16:21 Благодарность патронам
https://www.youtube.com/watch?v=GjnK6xZ-0GM
#Android
👉 @developer_mobila
Разбор о влиянии Play Feature Delivery на архитектуру приложения, миграции существующих фич и выборе динамических фич. Будет интересно для всех, кто хочет узнать больше об оптимизации и развитии Android-приложений.
0:00 Вступление
1:20 Содержание
2:27 Архитектура приложений до Play Feature Delivery
4:54 Влияние Play Feature Delivery на архитектуру приложения
7:34 Интеграция AvitoTech
8:12 Миграция существующих фичей
13:18 Какая фича должна быть динамической
15:42 Заключение
16:21 Благодарность патронам
https://www.youtube.com/watch?v=GjnK6xZ-0GM
#Android
👉 @developer_mobila
👍1
Улучшение производительности Android-приложения NordVPN с помощью плагина Compose Compiler
Эта практика помогает нам использовать плагин Compose Compiler в качестве проверки Composable кода, что поддерживает стандарты кодирования и способствует повышению производительности приложения.
https://nordsecurity.com/blog/improving-nordvpn-android-compose-compiler
#Android
👉 @developer_mobila
Эта практика помогает нам использовать плагин Compose Compiler в качестве проверки Composable кода, что поддерживает стандарты кодирования и способствует повышению производительности приложения.
https://nordsecurity.com/blog/improving-nordvpn-android-compose-compiler
#Android
👉 @developer_mobila
Создаем свое первое приложение с помощью SwiftUI и SwiftData
https://www.youtube.com/watch?v=n4SCMC25BxY
#ios
👉 @developer_mobila
https://www.youtube.com/watch?v=n4SCMC25BxY
#ios
👉 @developer_mobila
YouTube
Create your first app with SwiftUI and SwiftData
You can find my fundraiser here: https://www.justgiving.com/page/swiftui-birthday-2023 – all donations welcome!
Get the code here: https://github.com/twostraws/FaceFacts
December 22nd is my birthday, and as usual I'll be live-streaming building a complete…
Get the code here: https://github.com/twostraws/FaceFacts
December 22nd is my birthday, and as usual I'll be live-streaming building a complete…
🔥2
Koin, Ktor & Paging in KMM | Compose Multiplatform
Kotlin Multiplatform Mobile (KMM) превратился из амбициозной идеи в стабильный и мощный фреймворк, предоставляющий разработчикам возможность беспрепятственно обмениваться кодом на разных платформах. Благодаря недавнему достижению стабильности KMM стал переломным моментом в мире кроссплатформенной разработки.
https://proandroiddev.com/koin-ktor-paging-in-kmm-1800b9fad7f3
#Android
👉 @developer_mobila
Kotlin Multiplatform Mobile (KMM) превратился из амбициозной идеи в стабильный и мощный фреймворк, предоставляющий разработчикам возможность беспрепятственно обмениваться кодом на разных платформах. Благодаря недавнему достижению стабильности KMM стал переломным моментом в мире кроссплатформенной разработки.
https://proandroiddev.com/koin-ktor-paging-in-kmm-1800b9fad7f3
#Android
👉 @developer_mobila