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

Регистрация в РКН: https://gosuslugi.ru/snet/67b464d698a28c4e866d827a

Размещение рекламы: @tanyasanovna
Download Telegram
Словарь Swift Concurrency

Полный список всех терминов, относящихся к Swift Concurrency, разблр каждого из них, и ссылка на пропозал, в котором его впервые представили.
Поддержка кастомных инструкций к репозиторию в Copilot

Теперь вы можете добавить файл .github/copilot-instructions.md в ваш репозиторий, описать там дополнительные детали про ваш проект: технический стек, принятые стандарты, желаемое поведение ассистента – и Copilot будет учитывать их при работе.
Распознавание номеров телефонов с локальными моделями

Ребята решили разработать приложение, которое с помощью камеры определяло бы и парсило телефонные номера – как печатные, так и рукописные. В процессе они наступили на все возможные грабли, включая попытку использовать Multipeer Connectivity, который все такой же сломанный, как и 10 лет назад, когда я сам пробовал делать на нем проект, и парсинг на регулярных выражениях, что вообще никогда не бывает хорошей идеей.

Но вообще статья кайф, рекомендую!
Мы очень хотим записать большой выпуск Подлодки про Swift – поговорить про философию языка, ключевые фичи, необычные технические концепции, успехи в нишах за пределами iOS разработки, и, главное, про постепенное сближение с С++.

Если вы:
👉Глубоко знаете и Swift, и С++
👉Следите за эволюцией Swift
👉Умеете бодро и интересно рассуждать про языки программирования
👉В идеале писали не только мобильные приложения, но и что-то еще в экосистеме Swift

То отзывайтесь в нашей форме поиска гостей!
Новый релиз Swift Playground

Apple впервые за долгое время обновили Swift Playgrounds для iPad, одновременно переименовав его в Swift Playground. Главное в обновлении – поддержка iOS 18, но завезли и небольшие интерфейсные изменения.
Как рисовать карты на Swift Charts

С помощью Swift Charts можно отрисовывать не только графики, но и карты с регионами по массиву координат. Получившиеся карты можно делать интерактивными – например, выделять регион по тапу на него.
Swift-плагин для VS Code

Плагин для VS Code существует уже какое-то время, но разрабатывался он не как официальный проект. Теперь его код перенесли в официальный GitHub Swift, и сам экстеншн загрузили в магазин плагинов VS Code.
Что опенсорс Swift Build значит для экосистемы

Шикарный разбор главного события последнего месяца от команды Tuist, основная ценность проекта которых как раз и заключается в том, что они прятали сложность xcodebuild подальше от людей.

Из интересного – очень вероятным следующим шагом будет появление универсального DSL для описания проекта, который сможет заменить и Package.swift, и xcodeproj.
Плагин Copilot для Xcode вышел уже несколько месяцев назад. Расскажите, пользуетесь ли вы им? Что работает хорошо, а что – не очень? Насколько сказывается на вашем опыте тот факт, что к Xcode он прикручен костылями?
Бесплатная альтернатива App Center Distribution

Emerge сделали свой сервис по распространению iOS и Android билдов бесплатным. Лимиты довольно неплохие для большинства команд:

👉5000 билдов в месяц
👉Неограниченное количество пользователей
👉SSO
👉SDK для автоматического уведомления пользователей о новых сборках

Детали вот тут.
Рабочая группа вокруг Swift on Android

История вокруг использования Swift для Android разработки продолжается! Сообщество собрало вокруг этого движа рабочую группу, в которую входят как разработчики Skip, так и другие люди. Пока их план – встречаться и обсуждать проблемы, но в будущем надеются стать официальной частью проекта Swift.
Как воспроизводить state restoration

В SwiftUI state restoration реализуется через SceneStorage. При этом протестировать его работу вручную – задача не очень тривиальная, так как при закрытии приложения через app switcher он сбросится. Вместо этого нужно сделать следующие шаги:

👉Запустите приложение в симуляторе
👉Измените стейт (например, пробегитесь по навигации)
👉Нажмите Home, отправьте приложение в бэкграунд
👉Нажмите Stop в Xcode
👉Запустите приложение из Xcode еще раз и проверьте, что стейт восстановился
This media is not supported in your browser
VIEW IN TELEGRAM
Noora – UI компоненты для CLI

Писать консольные утилиты на своем родном языке намного веселее, чем на каком-нибудь Python или Ruby. Noora – Swift-пакет, который дает вам удобные графические примитивы для крутых консольных интерфейсов. Из примеров компонентов: алерты, yes/no вопросы, индикатор прогресса.
NSHipster про Ollama

Mattt продолжает писать в свой казалось бы уже давно забытый блог. Новые статьи теперь не совсем про iOS разработку, а скорее про различный тулинг вокруг, который может быть релевантен и мобильщикам. В этот раз рассказывает про Ollama – CLI инструмент для установки и менеджмента локальных LLM.
Cooperative Cancellation в Swift Concurrency

Отмена и остановка задач в Swift Concurrency – разные концепции. Задача никогда не останавливается автоматически, но рантайм сообщает о том, что она помечена как отмененная. Как обрабатывать эту информацию – решать вам. Например, можно вернуть пустой результат или частичный.
Toolbar и NavigationView

Модификатор .toolbar в SwiftUI добавляет вьюшке тулбар, но делает он это только тогда, когда она находится в навигационном стеке. Для того, чтобы тулбар отображался вне зависимости от наличия NavigationView, автор статьи перепробовал несколько подходов и поделился довольно костыльным, но при этом рабочим решением.
Полезный тулинг для терминала

👉Atuin – история вызванных команд с fuzzy поиском по ним
👉Starship – простой способ раскрасить терминал
👉fzf – простой fuzzy поиск по файлам
👉Secure Shellfish – iOS приложение для ssh доступа к вашей машине
SharingGRDB – альтернатива SwiftData

Pointfree выпустили новую библиотеку SharingGRDB. API практически такой же, как у SwiftData, но под капотом крутится полноценная SQLite база, к содержимому которой можно получить прямой доступ.

Примеры использования можно посмотреть тут.
Что нового в concurrency в Swift 6.1

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