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
Релиз Swiftly 1.0

Swiftly – это CLI-тул, который позволяет удобно менеджерить версии Swift тулчейна. Он может пригодиться, когда вы хотите установить версию Swift, отличную от той, которая шиппится вместе с Xcode, или установить Swift на не-macOS систему.
Интеграция SwiftUI с Rust-библиотекой egui

Держите дикую историю про то, как общая структура приложения была реализована на SwiftUI, а вот рендеринг конкретных таблиц, требовательных к перфомансу, на Rust-либе egui.

👉Исходники
👉Видео результата
Выпуск Подлодки про Swift

Восемь лет назад мы начинали Подлодку как подкаст про iOS разработку. Со временем проект эволюционировал, мы все больше и больше расширяли список тем. Но когда-то нужно вернуться и к корням – и спустя 400 выпусков мы все-таки записали офигенный подробный эпизод про Swift. Глеб Лукьянец, которого знают все посетители нашего чата, рассказал про историю развития, ключевые фичи и необычные технические концепции в языке. Ну и, конечно же, похоливарили про растущую сложность, запутанный дизайн и макросы!
Избегаем Optionals при работе с URL

Санделл вышел из долгой спячки, и сразу же с прекрасной статьей про разные техники работы с URL, которые помогают избежать работы с ним как с Optional типом. Одна из них – макросы, которые позволяют удобно работать с URL, известными в компайл-тайме, а вторая – сравнительно новый API для динамической сборки URL в рантайме.
Поддержка Swift в Copilot Code Review

Copilot Code Review – это AI агент от GitHub, который автоматически реаьюит ваш код: ищет баги, проблемы с перфомансом, и даже предлагает фиксы. Так вот, он вышел из Beta, и вместе с этим анонсировали поддержку Swift. Затаскивайте в ваши проекты и расскажите, как работает!
Продвинутая работа с превью в Xcode

👉Макрос @Previewable позволяет избежать создания дополнительнвх SwiftUI структур, нужных только для работы превью. Благодаря ему можно и создать превью, и задать для него стейт в одну строчку.
👉Протокол PreviewModifier помогает с созданием переиспользуемых наборов данных, которые можно использовать в разных превью.
Подборка семплов TextRenderer

TextRenderer – новый протокол в SwiftUI, с помощью которого можно реализовывать кучу классных эффектов с текстом. По ссылке – подборка семплов как на чистом Swift, так и с использованием Metal.
В чем сложность сделать калькулятор

Для многих из нас калькулятор был чуть ли не первым приложением, которое мы написали еще на Basic или Pascal. Казалось бы, в чем сложность, когда все математические операции уже определены. Так вот, держите историю про то, что математика – это сложно, и почему калькулятор на Android работает корректнее, чем на iOS.
Как банки обходят блокировку в App Store

Большой разбор от Surf способов, какими банки появляются в App Store, несмотря на запреты. И если в самой идее выдавать себя на ревью за другое приложение нет ничего нового, самое интересное в деталях:

👉Код обфусцируется, а все имена переменных и функий, связанных с финансами, переименовываются
👉Чтобы пройти проверки permissions, нужно придумывать правдоподобные кейсы использования нужных вам API
👉Приложение публикуется только в одной стране, и первое время недоступно в других, чтобы избежать подозрительного взрывного роста инсталлов
Бесплатные OpenAI модели в Cursor и Windsurf

Если у вас пока так и не добрались руки попробовать новую волну AI code editor'ов, то эта неделя идеально подходит. OpenAI выпустил сразу несколько новых моделей, хорошо заточенных под разработку, а Cursor и Windsurf дали к ним бесплатный доступ.
Что нового в SwiftWasm

Поддержка WebAssembly в Swift движется очень быстро. Начиная со Swift 6.1 для сборки Wasm больше не нужен кастомный пропатченный тулчейн, достаточно официального! Короче говоря, если вы еще не пробовали собирать веб-приложения на Swift, сейчас самое время попробовать.
Про цифровую гигиену

Так, ну не только же посты про iOS разработку выкладывать. Держите замечательный гайд по базовой цифровой гигиене от Андрея Карпатого – про то, как минимальными усилиями существенно поднять уровень своей безопасности и приватности.
Коллекция полезных макросов

Два года назад я уже делился этой ссылкой, но с тех пор каталог существенно пополнился. Из интересного:

👉CloakedString – обфускация строк
👉MemoizMacro – мемоизация функций
👉SwiftNet – сетевые запросы со встроенным пиннингом, коллбэками и кучей других фичей
Переезд на Bazel и ускорение сборок в 3 раза

Еще одна история переезда на Bazel с приятным улучшением перфоманса сборок как на CI, так и на девелоперских машинах. В статье проходятся по всем аспектам миграции:

👉Обеспечение feature parity с Xcode через rules_xcodeproj
👉Сложности с code coverage, наборами рулов, и увеличенным размером бинаря
👉Пошаговый план переезда
Как работать с Measurements

Для того, чтобы удобно работать с различными единицами измерений, в Swift есть специальный тип Measurements. В нем хорошо вообще все – можно удобно конвертировать различные величины друг в друга, тип измерения меняется автоматически в зависимости от выбранной локализации, а NumberFormatter умеет корректно форматировать название измерения.
Пишем MCP сервер на Swift

Про Model-Context-Protocol, о котором в интернете говорят все чаще и чаще, я уже рассказывал на канале. Держите простой туториал по тому, как написать свой первый MCP сервер на Swift и подключить его к VS Code.
VS Code плагин для iOS разработки

Раз мы заговорили про VS Code, то смотрите какой плагин я нашел – ребята пытаются воспроизвести большую часть фичей Xcode. Что плагин уже умеет:

👉Автокомплит Swift кода
👉Собирать и запускать приложения
👉Форматировать код
👉Управлять симуляторами и девайсами
👉Запускать дебаггер и тесты