iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT
12.3K subscribers
627 photos
63 videos
3.86K links
Самые интересные статьи, видео и новости, связанные с iOS разработкой. Не больше трёх материалов в день.

Лучшее iOS сообщество в Телеге: @iosgt

Размещение рекламы: @tanyasanovna
Download Telegram
Стать сотрудником Яндекса быстрее и проще, чем кажется. Участвуйте в днях быстрого найма: решите тестовое, пройдите несколько секций собеседования и получите офер за несколько дней.

Ближайшие Fast Track мероприятия:

• 7-8 сентября — для Android- и iOS-разработчиков, офер за 2 дня в команды Еды и Лавки.

Зарегистрироваться
Простое приложение на Swift/WebAssembly

Ребята из Pointfree запустили новую серию видео, в рамках которой они будут разрабатывать кроссплатформенное приложение, запускающееся как на iOS, так и в браузере, с помощью экспериментального компилятора Swift в WebAssembly.
Typed throws в Swift 6.0

Еще одно quality of life улучшение в Swift 6 – возможность в явном виде указать тип ошибки, которую может выбросить функция. При этом вы можете продолжать писать код как и раньше, не указывая конкретный тип – компилятор сам приведет его к any Error.
Как писать тесты на утечки памяти

Возможность генерировать граф потребления памяти вместе с прогоном UI тестов появилась еще в Xcode 13. В статье разбирается, как с ее помощью можно автоматически отлавливать утечки памяти на CI.
Conditional брейкпойнты могут замедлять работу приложения

Отличная история дебага неочевидной проблемы с перфомансом, в которой сам дебаггер и оказался главным виновником.
Как не надо использовать DeviceCheck Framework

DeviceCheck фреймворк дает возможность записать произвольную информацию размером в два бита на приложение. Эта информация будет сохраняться между всеми переустановками приложения, стиранием данных и даже при смене владельцев телефона. В статье рассказывается, как из-за того, что Snapchat использовал эти два бита, чтобы сохранять информацию о статусе бана пользователя, новый владелец айфона не мог пользоваться их приложением.
Как держать версии зависимостей актуальными

👉Назначаем ответственного за каждый из уже добавленных пакетов. Роль ответственного – обновлять его версии, когда они выходят.
👉С помощью пакета swift-outdated следим на CI за появлением новых версий.
👉Если новая версия появляется, пишем об этом в Slack и меншним ответственного.
👉Если внезапно у какого-то пакета нет ответственного, кидаем ошибку.
EditorConfig в Xcode 16

В Xcode 16 появилась возможность программно задавать настройки редактора, которые зависят от текущего открытого проекта. Например, в одном проекте максимальная длина строки кода может быть 120 символов, а в другом – без ограничений.
Роадмап Vapor 5

Vapor – один из основных серверных фреймворков на Swift. Команда опубликовала роадмап на следующую мажорную версию, первую альфу которой хотят выпустить вместе с Swift 6. Ключевое изменение, конечно, полный переезд на Swift Concurrency, но помимо него есть и другие интересные планы.
Server-side Swift Meetup #3

В продолжение темы Swift на сервере, ловите ссылку на следующий митап от команды, занимающейся его развитием. В программе:

👉Swift и WebAssembly
👉Подготовка проектов к Swift 6

📆Митап пройдет 17 сентября
Распознаем скриншоты банковских приложений

Классный подход к решению задачи получения информации о выбранных категориях кэшбека в разных банках. Вместо того, чтобы пытаться вытащить нужную информацию по API, которого может и не быть, автор статьи использует Vision фреймворк, скармливая ему скриншоты приложений. И работает!
Переезд с CocoaPods на SwiftPM+Tuist

Недавний переход CocoaPods в режим поддержки послал еще один сигнал всем сомневающимся – пора уже переходить на SwiftPM. А одновременно с этим можно посмотреть и на Tuist, который поможет проще реализовать модульность, и уйти от конфиктов в файле проекта. Да и вообще, последнее время они релизят кучу классных фичей.
libcimbar – протокол передачи данных на QR кодах

Не знаю, зачем вам этот проект, но выглядит как клевая идея для основы какого-нибудь пет-проекта! На базе анимированного QR кода реализована передача данных со скоростью около 100 кбит/сек.
Релиз Hummingbird 2

В последнее время количество новостей вокруг серверного Swift какое-то зашкаливающее. На этот раз речь про мажорный релиз еще одного сравнительно популярного фреймворка. Ключевое изменение, конечно же, Swift Concurrency. Полные релиз ноуты можно прочитать тут.
Используем Cursor для iOS разработки

Cursor – хайповая IDE, позиционирующая себя как AI-centric. Если вам интересно попробовать разрабатывать в ней под iOS, то в статье рассказывается, как с помощью библиотеки Inject можно обойтись без необходимости работать с симулятором через Xcode.
Обновление Apple Design Resources

С выходом новых девайсов обновились и UI библиотеки Apple для Figma и Sketch. А главное, конечно – 10 новых сочетаний корпусов и ремешков для часов!
Как использовать Morphology для строк без чисел

Morphology – набор API в Foundation, которые позволяют правильным образом склонять ваши строки. Например, указывать правильное окончание у "You have X messages" в зависимости от значения Х.

При этом задача отображения строки "You have unread messages", которая не включает в себя Х, гораздо менее тривиальна.