This media is not supported in your browser
VIEW IN TELEGRAM
Анимация паспорта в Airbnb
Инженеры из Airbnb пошагово рассказывают, как они сделали сложную анимацию открывающегося паспорта. А если вы хотите побольше узнать об их системе работы с анимациями в целом, почитайте одну из предыдущих статей.
Инженеры из Airbnb пошагово рассказывают, как они сделали сложную анимацию открывающегося паспорта. А если вы хотите побольше узнать об их системе работы с анимациями в целом, почитайте одну из предыдущих статей.
Шаблоны новых айпадов уже в Sketch
После анонса новых айпадов (и скандала с рекламой, но о нем мы в канале говорить не будем), Apple добавили шаблоны с их рамками в официальную библиотеку в Sketch. Можете уже использовать для своих скриншотов!
После анонса новых айпадов (и скандала с рекламой, но о нем мы в канале говорить не будем), Apple добавили шаблоны с их рамками в официальную библиотеку в Sketch. Можете уже использовать для своих скриншотов!
WWDC Index
Новый коммьюнити-проект вокруг WWDC – список всех сессий и их описаний на одной странице. Cmd+F, пишете нужный вам кейворд, получаете список всех сессий!
Новый коммьюнити-проект вокруг WWDC – список всех сессий и их описаний на одной странице. Cmd+F, пишете нужный вам кейворд, получаете список всех сессий!
Clock в Swift неэффективны
Автор статьи уткнулся в плохую производительность работы с
Автор статьи уткнулся в плохую производительность работы с
ContinuousClock
и SuspendingClock
, побенчмаркал их работу, и оказалось, что они работают намного медленнее обычного Date
. Вместо них он предлагает переходить на функцию mach_absolute_time
.Тренируем и запускаем ML модель на девайсе
Хороший туториал по тому, как с нуля обучить свою ML модель для того, чтобы предсказывать вероятность закрытия диалогового окна в зависимости от уровня заряда батареи.
Хороший туториал по тому, как с нуля обучить свою ML модель для того, чтобы предсказывать вероятность закрытия диалогового окна в зависимости от уровня заряда батареи.
SwiftSecurity – обертка над Keychain API
Подписчик канала поделился своей новой библиотекой SwiftSecurity. Вот основные фичи:
👉Поддерживает все сущности Keychain API.
👉Дает компайл-тайм проверки для kSetAttr.
👉Совместима со SwiftUI и CryptoKit.
Подписчик канала поделился своей новой библиотекой SwiftSecurity. Вот основные фичи:
👉Поддерживает все сущности Keychain API.
👉Дает компайл-тайм проверки для kSetAttr.
👉Совместима со SwiftUI и CryptoKit.
Hello Developer: май 2024
Новый выпуск ежемесячной рассылки Apple для разработчиков.
👉Pathways – обучающие треки с подборкой статей, видео и документации по разным темам.
👉Интервью с победителями Swift Student Challenge.
👉Регистрация на онлайн встречи с App Review Team.
👉Обзор Apple Pencil Pro.
👉Q&A от команды SharePlay.
👉Новый фреймворк для конвертации документов в PDF.
Новый выпуск ежемесячной рассылки Apple для разработчиков.
👉Pathways – обучающие треки с подборкой статей, видео и документации по разным темам.
👉Интервью с победителями Swift Student Challenge.
👉Регистрация на онлайн встречи с App Review Team.
👉Обзор Apple Pencil Pro.
👉Q&A от команды SharePlay.
👉Новый фреймворк для конвертации документов в PDF.
Недостаток unidirectional архитектур
Основной недостаток однонаправленных архитектур, по мнению автора – размазывание бизнес-логики по разным местам в коде, из-за чего сложно получить цельную картинку происходящего. В статье он показывает, почему это кажется проблемой, на примере одного экрана.
Основной недостаток однонаправленных архитектур, по мнению автора – размазывание бизнес-логики по разным местам в коде, из-за чего сложно получить цельную картинку происходящего. В статье он показывает, почему это кажется проблемой, на примере одного экрана.
Динамическая тень Apple Pencil Pro
Apple Pencil Pro отбрасывает различную тень на экран в зависимости от того, какой конкретно инструмент рисования сейчас выбран.
Apple Pencil Pro отбрасывает различную тень на экран в зависимости от того, какой конкретно инструмент рисования сейчас выбран.
This media is not supported in your browser
VIEW IN TELEGRAM
Новые фичи accessibility
Как всегда перед WWDC Apple показывает новые фичи accessibility, которые релизнутся в следующем обновлении iOS.
👉Борьба с укачиванием при чтении в автомобиле
👉Управление iPad и iPhone движением глаз
👉Воспроизведение музыки через haptic вибрацию
Как всегда перед WWDC Apple показывает новые фичи accessibility, которые релизнутся в следующем обновлении iOS.
👉Борьба с укачиванием при чтении в автомобиле
👉Управление iPad и iPhone движением глаз
👉Воспроизведение музыки через haptic вибрацию
Оптимизация перфоманса с помощью Accelerate фреймворка
Недавно я делился хорошей русскоязычной статьей с обзором фреймворка Accelerate. Держите пример того, как его использование помогло улучшить перфоманс конверсии видео и процессинга аудио на несколько порядков.
Недавно я делился хорошей русскоязычной статьей с обзором фреймворка Accelerate. Держите пример того, как его использование помогло улучшить перфоманс конверсии видео и процессинга аудио на несколько порядков.
Инструмент для тестирования universal links
getuniversal.link – бесплатный сервис для тестирования того, насколько корректно Apple закешировали ваш AASA файл.
Детали – в блогпосте.
getuniversal.link – бесплатный сервис для тестирования того, насколько корректно Apple закешировали ваш AASA файл.
Детали – в блогпосте.
Опыт разработки на Swift под Playdate
Михаил Рубанов вдохновился недавно появившейся поддержкой Swift в консоли Playdate, и попробовал сделать для нее пет-проект. В видео он рассказывает про:
👉Доступный API
👉Особенности разработки без тестов, логгера и дебаггера
👉Работу с UnsafeMutablePointer и ручным управлением памятью
Михаил Рубанов вдохновился недавно появившейся поддержкой Swift в консоли Playdate, и попробовал сделать для нее пет-проект. В видео он рассказывает про:
👉Доступный API
👉Особенности разработки без тестов, логгера и дебаггера
👉Работу с UnsafeMutablePointer и ручным управлением памятью
YouTube
Как писать игры на Swift для Playdate
Playdate это портативная консоль с черно-белым экраном и ручкой для кручения. Недавно для нее стало можно разрабатывать на Swift, я попробовал и рассказал на встрече iOS-гильдии в Додо Инжиниринге про 4 дня экспериментов
0:00 Что еще за Playdate
2:22 При…
0:00 Что еще за Playdate
2:22 При…
Проблемы работы со SwiftUI на iOS 14 и их решения
Команда Яндекс Диска написала шикарный лонгрид про то, как они добавляли SwiftUI в легаси проект на UIKit и столкнулись с миллионом проблем по ходу интеграции:
👉Баги в шаринге файлов
👉Борьба с CocoaPods и превью
👉Проблемы в работе с коллекциями
👉Проблемы с анимациями
Помимо решения этих проблем ребята делятся и советами по улучшению перфоманса, которые помогли получить прирост порядка 3х.
Команда Яндекс Диска написала шикарный лонгрид про то, как они добавляли SwiftUI в легаси проект на UIKit и столкнулись с миллионом проблем по ходу интеграции:
👉Баги в шаринге файлов
👉Борьба с CocoaPods и превью
👉Проблемы в работе с коллекциями
👉Проблемы с анимациями
Помимо решения этих проблем ребята делятся и советами по улучшению перфоманса, которые помогли получить прирост порядка 3х.
Как и когда запрашивать ревью на приложение
Тред с обсуждением особенностей работы с
👉Примерные бенчмарки количества рейтингов к количеству загрузок: 1.5-2.5%.
👉Конкретных стратегий очень много, но народная мудрость говорит о том, что лучше запрашивать отзыв не сразу на старте приложения, а после завершения целевого действия.
👉Больше всего хвалят показ по сочетанию следующих факторов: 5 запусков приложения, несколько совершенных целевых действий, и хотя бы неделя, прошедшая с первого запуска.
Тред с обсуждением особенностей работы с
requestReview
API, которое показывает пользователю предложение оценить приложение. Основная сложность с тем, что разработчик напрямую не управляет появлением этого алерта, равно как и не может узнать, был ли он показан.👉Примерные бенчмарки количества рейтингов к количеству загрузок: 1.5-2.5%.
👉Конкретных стратегий очень много, но народная мудрость говорит о том, что лучше запрашивать отзыв не сразу на старте приложения, а после завершения целевого действия.
👉Больше всего хвалят показ по сочетанию следующих факторов: 5 запусков приложения, несколько совершенных целевых действий, и хотя бы неделя, прошедшая с первого запуска.
iOS Dev Space
Matt Corey (@[email protected])
What are folks' strategies with using the StoreKit 'requestReview' call? Given that Apple controls when the user sees this, I often see advice that you should be pretty aggressive with calling this - is this how you call it?
Have you seen any evidence…
Have you seen any evidence…
Function Body Macros
В Swift приняли пропозал, добавляющий в систему макросов возможность подменять или аугментировать тело функции. Короче, такой свиззлинг, но в компайл-тайме.
Такая штука открывает кучу возможностей, например:
👉Автоматическое логирование вызова функции и переданных аргументов
👉Превращение обычных функций в RPC
В Swift приняли пропозал, добавляющий в систему макросов возможность подменять или аугментировать тело функции. Короче, такой свиззлинг, но в компайл-тайме.
Такая штука открывает кучу возможностей, например:
👉Автоматическое логирование вызова функции и переданных аргументов
👉Превращение обычных функций в RPC
mise – удобный version manager для тулинга
mise – менеджер версий, который позволяет вам централизованно управлять версиями консольных тулов, используемых как локально, так и на CI. Создаете toml файл, определяете там нужные версии, добавляете его в репозиторий проекта – и готово!
mise – менеджер версий, который позволяет вам централизованно управлять версиями консольных тулов, используемых как локально, так и на CI. Создаете toml файл, определяете там нужные версии, добавляете его в репозиторий проекта – и готово!
Про iOS разработку в Revolut
Обзорная статья про то, как в Revolut организована iOS разработка во всех их приложениях. Интересные факты:
👉Используется Clean Architecture, смешанная с MVVM-C.
👉Приложения побиты на модули, 160 пошарены между всеми проектами, еще 170 в основном приложении.
👉По техстеку: Swift, Bazel, минимум зависимостей от сторонних фреймворков.
👉Всего над их проектами работает 120 айосеров.
👉Регулярно гоняются 150.000 юнит тестов и 3.000 UI тестов.
Обзорная статья про то, как в Revolut организована iOS разработка во всех их приложениях. Интересные факты:
👉Используется Clean Architecture, смешанная с MVVM-C.
👉Приложения побиты на модули, 160 пошарены между всеми проектами, еще 170 в основном приложении.
👉По техстеку: Swift, Bazel, минимум зависимостей от сторонних фреймворков.
👉Всего над их проектами работает 120 айосеров.
👉Регулярно гоняются 150.000 юнит тестов и 3.000 UI тестов.
Medium
The fundamentals of iOS at Revolut
We believe that it’s possible to deliver high-quality software, fast. To achieve this we follow a set of important principles and apply a…