Backyard Birds - тестовая игра Apple с демонстрацией 3 новинок WWDC 2023. В ней модель данных реализуется с использованием SwiftData и она легко интегрируется со SwiftUI с помощью протокола Observable. Виджеты игры реализуют App Intents для интерактивных и настраиваемых виджетов. Для осуществления покупки в приложении используются ProductView и SubscriptionStoreView из StoreKit.
Backyard Birds на GitHub: https://github.com/apple/sample-backyard-birds
Платформа: iOS
⭐️: 203
Backyard Birds на GitHub: https://github.com/apple/sample-backyard-birds
Платформа: iOS
⭐️: 203
GitHub
GitHub - apple/sample-backyard-birds
Contribute to apple/sample-backyard-birds development by creating an account on GitHub.
👍1
Platform Samples - коллекция примеров применения различных API платформы Android.
Целью этих примеров является демонстрация определенной функциональности в изоляции, и они могут использовать упрощенный код. Для лучших практик в реальных условиях разработчики рекомендуют следовать документации и Now In Android.
Среди рассмотренных тем - доступность, камера, подключение, графика, геолокация, приватность, пользовательский интерфейс.
Platform Samples на GitHub: https://github.com/android/platform-samples
Платформа: Android
⭐️: 234
Целью этих примеров является демонстрация определенной функциональности в изоляции, и они могут использовать упрощенный код. Для лучших практик в реальных условиях разработчики рекомендуют следовать документации и Now In Android.
Среди рассмотренных тем - доступность, камера, подключение, графика, геолокация, приватность, пользовательский интерфейс.
Platform Samples на GitHub: https://github.com/android/platform-samples
Платформа: Android
⭐️: 234
GitHub
GitHub - android/platform-samples: A collection of samples of different Android OS platform APIs.
A collection of samples of different Android OS platform APIs. - android/platform-samples
Немного пост обзоров WWDC:
• Конференция Apple WWDC 2023: большой обзор обновлений и гаджетов
• WWDC 2023. Что нового для разработчика
• Горячие новинки WWDC 2023
• All new frameworks presented at WWDC23
• WWDC 2023: What’s New In Swift
• WWDC 2023: What’s New In UIKit
• WWDC 2023: What’s New In SwiftUI
Платформа: iOS
• Конференция Apple WWDC 2023: большой обзор обновлений и гаджетов
• WWDC 2023. Что нового для разработчика
• Горячие новинки WWDC 2023
• All new frameworks presented at WWDC23
• WWDC 2023: What’s New In Swift
• WWDC 2023: What’s New In UIKit
• WWDC 2023: What’s New In SwiftUI
Платформа: iOS
AppTractor
Конференция Apple WWDC 2023: большой обзор обновлений и гаджетов
Оправдала ли конференция ожидания миллионов и что презентовала компания? Рассказывает Александр Кияйкин, CTO CleverPumpkin.
This media is not supported in your browser
VIEW IN TELEGRAM
Практическое руководство по Jetpack Compose: создаем анимированную кнопку-счетчик
В этом руководстве я поделюсь с вами каждым шагом, который я предпринял для реализации этого дизайна в Jetpack Compose.
Статья: https://habr.com/ru/companies/otus/articles/740190/
Платформа: Android
В этом руководстве я поделюсь с вами каждым шагом, который я предпринял для реализации этого дизайна в Jetpack Compose.
Статья: https://habr.com/ru/companies/otus/articles/740190/
Платформа: Android
😱2
AudioKit - это платформа синтеза, обработки и анализа звука для iOS, macOS (включая Catalyst) и tvOS. Это целая экосистема разработки вокруг аудио, состоящая из репозиториев кода, пакетов, библиотек, алгоритмов, приложений, тестовых площадок, тестов и скриптов, созданная и используемая сообществом аудио программистов, разработчиков приложений, инженеров, исследователей, ученых, музыкантов, геймеров и людей, только начинающих программировать.
AudioKit на GitHub: https://github.com/AudioKit/AudioKit
Платформа: iOS
⭐️: 9.9K
AudioKit на GitHub: https://github.com/AudioKit/AudioKit
Платформа: iOS
⭐️: 9.9K
👍2
Как Tokopedia добилась ускорения тестов в 8 раз
В этой статье мы рассмотрим наш путь оптимизации ежедневного процесса модульного тестирования в iOS-команде Tokopedia. Мы расскажем, как мы проводили модульное тестирование в прежние времена и закончим тем, к чему мы пришли сегодня.
Перевод: https://apptractor.ru/info/articles/hvatit-tratit-vremya-na-modulnoe-testirovanie-kak-tokopedia-dobilas-uskoreniya-testov-v-8-raz.html
Платформа: iOS/тестирование
В этой статье мы рассмотрим наш путь оптимизации ежедневного процесса модульного тестирования в iOS-команде Tokopedia. Мы расскажем, как мы проводили модульное тестирование в прежние времена и закончим тем, к чему мы пришли сегодня.
Перевод: https://apptractor.ru/info/articles/hvatit-tratit-vremya-na-modulnoe-testirovanie-kak-tokopedia-dobilas-uskoreniya-testov-v-8-raz.html
Платформа: iOS/тестирование
Compose-recompose: почему происходят рекомпозиции и как уменьшить их количество
Когда изменяется состояние приложения или данных, используемых для отображения пользовательского интерфейса, Compose перестраивает только те компоненты, которые зависят от изменённых данных. Это позволяет Compose работать очень эффективно, перестраивая только необходимые части пользовательского интерфейса.
Однако, если подходить к процессу написания кода спустя рукава, Compose будет пытаться рекомпозировать множество неизменившихся частей пользовательского интерфейса. А из-за того, что рекомпозиции могут происходить на каждый кадр отрисовки, это может пагубно сказаться на производительности приложений.
Статья: https://habr.com/ru/companies/yandex/articles/739510/
Платформа: Android
Когда изменяется состояние приложения или данных, используемых для отображения пользовательского интерфейса, Compose перестраивает только те компоненты, которые зависят от изменённых данных. Это позволяет Compose работать очень эффективно, перестраивая только необходимые части пользовательского интерфейса.
Однако, если подходить к процессу написания кода спустя рукава, Compose будет пытаться рекомпозировать множество неизменившихся частей пользовательского интерфейса. А из-за того, что рекомпозиции могут происходить на каждый кадр отрисовки, это может пагубно сказаться на производительности приложений.
Статья: https://habr.com/ru/companies/yandex/articles/739510/
Платформа: Android
👍1
Media is too big
VIEW IN TELEGRAM
Card Game Animation - пример анимации карточной колоды на Jetpack Compose.
Card Game Animation на GitHub: https://github.com/MohamedRejeb/Card-Game-Animation
Платформа: Android
⭐️: 54
Card Game Animation на GitHub: https://github.com/MohamedRejeb/Card-Game-Animation
Платформа: Android
⭐️: 54
Где и как можно ускорить приложение на Android
В этой статье я старался донести не код, а скорее свой опыт и подходы, которые наша команда попробовала для ускорения. В итоге мы пришли к выводу, что самым жирным местом для ускорения остались сетевые запросы. При этом на старте у нас их было очень много. Так мы стали делать один запрос в бэкенд, который вернёт не кучу данных, которые нужно ещё провести через бизнес логику, а сразу готовые данные для отрисовки. Так мы пришли к BDUI и собственному мобильному бекенду.
Статья: https://habr.com/ru/companies/yandex/articles/721984/
Платформа: Android
В этой статье я старался донести не код, а скорее свой опыт и подходы, которые наша команда попробовала для ускорения. В итоге мы пришли к выводу, что самым жирным местом для ускорения остались сетевые запросы. При этом на старте у нас их было очень много. Так мы стали делать один запрос в бэкенд, который вернёт не кучу данных, которые нужно ещё провести через бизнес логику, а сразу готовые данные для отрисовки. Так мы пришли к BDUI и собственному мобильному бекенду.
Статья: https://habr.com/ru/companies/yandex/articles/721984/
Платформа: Android
👎1
SwiftSyntax - это набор библиотек Swift для разбора, проверки, генерации и преобразования исходного кода Swift. С его помощью вы можете, например, реализовать построение дерева исходного кода и сделать собственную подсветку синтаксиса, изменять код на лету, генерировать документацию и прочее. Собственно, большинство собственных инструментов Apple как раз и используют SwiftSyntax.
SwiftSyntax на GitHub: https://github.com/apple/swift-syntax
Платформа: iOS
⭐️: 2.3K
SwiftSyntax на GitHub: https://github.com/apple/swift-syntax
Платформа: iOS
⭐️: 2.3K
GitHub
GitHub - swiftlang/swift-syntax: A set of Swift libraries for parsing, inspecting, generating, and transforming Swift source code.
A set of Swift libraries for parsing, inspecting, generating, and transforming Swift source code. - swiftlang/swift-syntax
Видео и подкасты за неделю
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Посмотрели какое-то другое интересное видео? Отправьте боту -> 🧑🏻💻
•
(iOS En)
Spatial computing!•
(iOS En)
How to use Refreshable modifier in SwiftUI•
(iOS En)
Xcode 15 - What's New•
(iOS En)
Transition Animations w/ ScrollViews in SwiftUI•
(And Ru)
История ограничений фоновой работы в Android для разработчиков•
(And Ru)
Генерируем файлы с кодом по шаблону в Android Studio LiveTemplates•
(And En)
Now in Android: 85 - Platform and Quality at I/O, Android 14 Beta 3, Jetpack releases•
(And En)
Top 3 things to know in Multi-device for Android at Google I/O '23•
(And En)
Tasks, Back Stack & Launch Modes - Android Basics 2023•
(And En)
Activities & the Activity Lifecycle - Android Basics 2023•
(Crs Ru)
Почему KMM — не кроссплатформа?•
(Dev Ru)
Специфика и эффективное управление разработкой мобильных приложений•
(Dev Ru)
Data driven’ность — как командам аналитики фокусироваться на важных вещах•
(Dev Ru)
Видео Techdoc MeetupПосмотрели какое-то другое интересное видео? Отправьте боту -> 🧑🏻💻
SoundCloud
Spatial computing!
We're yet processing everything we've seen and heard at WWDC23. This was a truly packed event. And now we have to learn new thing – spatial computing. What it is, what it is for and many other questio
Новенькое с WWDC23: Отчёты о тестировании и аудит доступности
Я — Никита Коробейников, iOS Team Lead в Surf. Уже поставил бета-версию Xcode 15 и проверил на автотестах материал с сессий Fix failures faster with Xcode test reports и Perform accessibility audits for your app. Рассказываю, почему разработчикам гораздо удобнее теперь делать приложение доступным.
Статья: https://habr.com/ru/companies/surfstudio/articles/741830/
Платформа: iOS
Я — Никита Коробейников, iOS Team Lead в Surf. Уже поставил бета-версию Xcode 15 и проверил на автотестах материал с сессий Fix failures faster with Xcode test reports и Perform accessibility audits for your app. Рассказываю, почему разработчикам гораздо удобнее теперь делать приложение доступным.
Статья: https://habr.com/ru/companies/surfstudio/articles/741830/
Платформа: iOS
Хабр
Новенькое с WWDC23: Отчёты о тестировании и аудит доступности
Вот и закончилась очередная конференция Apple WWDC23 , на которой ребята из Apple рассказали об изменениях Xcode и Swift. Я — Никита Коробейников , iOS Team Lead в Surf. Уже поставил...
👌1
Compose Sensors - доступ к данным датчиков Android-устройств. Эта библиотека предоставляет удобную обертку над Sensor API в Android для использования с Jetpack Compose. Поддерживаются все датчики - от акселерометров до глубины и направления.
Compose Sensors на GitHub: https://github.com/mutualmobile/ComposeSensors
Платформа: Android
⭐️: 111
Compose Sensors на GitHub: https://github.com/mutualmobile/ComposeSensors
Платформа: Android
⭐️: 111
👍1
История ограничений фоновой работы в Android для разработчиков
Когда-то в Android были времена, когда запустить задачу в фоне было просто и гарантии её работы были высоки. Теперь же в ОС есть множество ограничений: работа в фоне, доступ к файловой системе, системы оптимизации расхода батарейки, разрешения, часть которых требует одобрения модераторов Google Play. Разработчикам приходится работать в условиях всех этих ограничений и учитывать их при разработке фичей. В рамках этой статьи я хочу разобраться с ограничениями, которые есть на разных версиях Android, чтобы вы смогли лучше понимать, что может происходить.
Статья: https://habr.com/ru/companies/broadcast/articles/734236/
Платформа: Android
Когда-то в Android были времена, когда запустить задачу в фоне было просто и гарантии её работы были высоки. Теперь же в ОС есть множество ограничений: работа в фоне, доступ к файловой системе, системы оптимизации расхода батарейки, разрешения, часть которых требует одобрения модераторов Google Play. Разработчикам приходится работать в условиях всех этих ограничений и учитывать их при разработке фичей. В рамках этой статьи я хочу разобраться с ограничениями, которые есть на разных версиях Android, чтобы вы смогли лучше понимать, что может происходить.
Статья: https://habr.com/ru/companies/broadcast/articles/734236/
Платформа: Android
Хабр
История ограничений фоновой работы в Android для разработчиков
Когда-то в Android были времена, когда запустить задачу в фоне было просто и гарантии её работы были высоки. Теперь же в ОС есть множество ограничений: работа в фоне, доступ к файловой системе,...
👍1
Раскрытие возможностей шаблона Декоратор
В этой статье мы отправимся в прагматичное путешествие по шаблону проектирования Декоратор (Decorator), раскрывая его принципы, практические подходы к реализации и реальные примеры использования.
Статья: https://apptractor.ru/info/articles/decorator.html
Платформа: Swift/Kotlin
В этой статье мы отправимся в прагматичное путешествие по шаблону проектирования Декоратор (Decorator), раскрывая его принципы, практические подходы к реализации и реальные примеры использования.
Статья: https://apptractor.ru/info/articles/decorator.html
Платформа: Swift/Kotlin
👍1
Макросы Swift появились в Swift 5.9 и были анонсированы на WWDC 2023. Макросы позволяют расширить функции компилятора с помощью кастомных проверок, проводимых во время компиляции, анализировать код, генерировать новый код, который будет записан в файлы во время компиляции, что позволит отказаться от шаблонного кода. Репозиторий Swift Macros - список созданных сообществом макросов и связанных с ними обучающих ресурсов.
Swift Macros на GitHub: https://github.com/krzysztofzablocki/Swift-Macros
Платформа: iOS
⭐️: 797
Swift Macros на GitHub: https://github.com/krzysztofzablocki/Swift-Macros
Платформа: iOS
⭐️: 797
Производительность Android-приложений: анализ узких мест с помощью Perfetto
Найти точную первопричину узкого места в производительности иногда бывает непросто. В этой статье мы рассмотрим, как с помощью Perfetto исследовать узкие места в производительности приложения, которые могут вызывать замедление или провалы в работе пользовательского интерфейса.
Статья: https://medium.com/@patilshreyas/mastering-android-app-performance-analyzing-bottlenecks-with-perfetto-3176b59f26d2
Платформа: Android
Найти точную первопричину узкого места в производительности иногда бывает непросто. В этой статье мы рассмотрим, как с помощью Perfetto исследовать узкие места в производительности приложения, которые могут вызывать замедление или провалы в работе пользовательского интерфейса.
Статья: https://medium.com/@patilshreyas/mastering-android-app-performance-analyzing-bottlenecks-with-perfetto-3176b59f26d2
Платформа: Android
👍1
Как обрабатывать пустые состояния с помощью UIContentUnavailableConfiguration
В этом году на WWDC Apple удивила разработчиков неожиданным улучшением UIKit. Введение UIContentUnavailableConfiguration было направлено на упрощение процесса создания пустых состояний для контроллеров представления.
По словам Apple, UIContentUnavailableConfiguration представляет собой composable описание пустого состояния и может быть снабжено содержимым-заполнителем, например, изображением или текстом.
Статья: https://swiftsenpai.com/development/using-uicontentunavailableconfiguration/
Платформа: iOS
В этом году на WWDC Apple удивила разработчиков неожиданным улучшением UIKit. Введение UIContentUnavailableConfiguration было направлено на упрощение процесса создания пустых состояний для контроллеров представления.
По словам Apple, UIContentUnavailableConfiguration представляет собой composable описание пустого состояния и может быть снабжено содержимым-заполнителем, например, изображением или текстом.
Статья: https://swiftsenpai.com/development/using-uicontentunavailableconfiguration/
Платформа: iOS
❤1
Alfa Mobile Meetup в Технопарке аттракционов 📲
23 июня в офисе Альфа-Банка в Москве пройдет митап для iOS и Android разработчиков.
Как всегда, будет два отдельных трека: для iOS и Android. И на каждом треке будут свои доклады от разработчиков из Альфы, Ozon и Яндекс.
На треке Android спикеры обсудят с участниками, зачем объединять код от разных команд в одну библиотеку и как создать Android-монорепозиторий, как работают альтернативные маркетплейсы для приложений и устроен процесс релизов у Альфа-Банка.
На треке iOS будет доклад про дебаггинг приложения без Xcode и дискуссия с коллегами из Яндекса и Ozon Tech.
А помимо докладов гости смогут поучаствовать в розыгрыше мерча от Альфы, попробовать хот-доги и сладкую вату.
Когда: 23 июня в 18:30
Где: в офисе Альфа-Банка в Москве или онлайн
Зарегистрироваться на митап и посмотреть программу
23 июня в офисе Альфа-Банка в Москве пройдет митап для iOS и Android разработчиков.
Как всегда, будет два отдельных трека: для iOS и Android. И на каждом треке будут свои доклады от разработчиков из Альфы, Ozon и Яндекс.
На треке Android спикеры обсудят с участниками, зачем объединять код от разных команд в одну библиотеку и как создать Android-монорепозиторий, как работают альтернативные маркетплейсы для приложений и устроен процесс релизов у Альфа-Банка.
На треке iOS будет доклад про дебаггинг приложения без Xcode и дискуссия с коллегами из Яндекса и Ozon Tech.
А помимо докладов гости смогут поучаствовать в розыгрыше мерча от Альфы, попробовать хот-доги и сладкую вату.
Когда: 23 июня в 18:30
Где: в офисе Альфа-Банка в Москве или онлайн
Зарегистрироваться на митап и посмотреть программу
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Clock of Clocks - анимированные часы, сделанные с помощью Jetpack Compose.
Clock of Clocks на GitHub: https://github.com/khoa-omega/clock-of-clocks
Платформа: Android
⭐️: 22
Clock of Clocks на GitHub: https://github.com/khoa-omega/clock-of-clocks
Платформа: Android
⭐️: 22
❤2
Библиотека MockWebServer-DSL в open-source: делаем конфетку из сетевых запросов в UI-тестах
Сегодня мы выпускаем в open-source собственную библиотеку MockWebServer DSL. Она помогает удобно писать обработчики запросов на бэкенд в Android-тестах. Мы давно пользуемся ею внутри нашей команды мобильной разработки в Авто.ру и других сервисах Яндекс Вертикалей — Аренде, Путешествиях, Недвижимости — и теперь хотим поделиться этим инструментом с остальными.
Статья: https://habr.com/ru/companies/yandex/articles/741882/
Платформа: Android
Сегодня мы выпускаем в open-source собственную библиотеку MockWebServer DSL. Она помогает удобно писать обработчики запросов на бэкенд в Android-тестах. Мы давно пользуемся ею внутри нашей команды мобильной разработки в Авто.ру и других сервисах Яндекс Вертикалей — Аренде, Путешествиях, Недвижимости — и теперь хотим поделиться этим инструментом с остальными.
Статья: https://habr.com/ru/companies/yandex/articles/741882/
Платформа: Android
Хабр
Библиотека MockWebServer-DSL в open-source: делаем конфетку из сетевых запросов в UI-тестах
Писать стабильные UI-тесты для Android-приложений — непростая задача. Здесь против ваших тестов работают обилие девайсов, нестабильность эмуляторов, многообразие поддерживаемых версий ОС, а ещё — ваши...