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

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

Размещение рекламы: @tanyasanovna
Download Telegram
Рендеринг пиксель-арта

Основная проблема в рендеринге пиксель-арта – размывание четких границ каждого пикселя при скейле картинки для дисплеев с большим разрешением. В статье разбирается два способа, как это сделать в SwiftUI: с помощью Image и с помощью Canvas.
👍7🔥31
Новая рабочая группа в Swift, отвечающая за тестирование

Как вы, наверное, знаете, развитие Swift сейчас довольно децентрализовано, и за разные его аспекты отвечают рабочие группв, собранные как из сотрудников Apple, так и из членов коммьюнити. Так вот, сформирована новая рабочая группа, которая будет отвечать за все, что связано с тестированием, включая различный тулинг и библиотеки. В основном они будут заниматься реализацией Swift Testing Vision.

Подробнее об участниках и целях можно прочитать здесь.
🔥12👍8
Используем Swift в Zed

Zed – сравнительно недавно выпущенный редактор кода, основная особенность которого – он супер быстрый. Если вам интересно посмотреть на еще одну альтернативу Xcode, то настроить для Swift разработки по инструкциям из статьи его довольно просто.
👍24👎5💅5
WWDC 2025

А вот и анонс WWDC этого года. Блокируем неделю с 9 по 13 июня. Смотреть можно, как и в прошлый раз на YouTube и в Apple Developer app.
27👍11👎6💅2
Почему Group в SwiftUI стоит избегать

В отличие от VStack/HStack, Group работает не очень надежно – поведение между симуляторами и превью различается, какие-то модификаторы вызываются только один раз, а какие-то – для каждой вьюшки.
💅177👎4
Мутационное тестирование в большом проекте

Мутационное тестирование – это метод тестирования программ, при котором в код специально вносятся небольшие изменения – мутации, чтобы проверить, обнаружат ли их тесты. Так вот, для Swift есть опенсорсный инструмент Muter, который умеет реализовывать довольно много различных мутаций.

В статье разбирается опыт использования Muter в проекте с 1000 тестов и 1657 сгенерированных мутантов.
👎76💅3👍2🔥2
Bindings в SwiftUI

Chris Eifhof рассказывает, почему в продакшн коде стоит избегать Binding(get:set:) – меньше рисков поймать проблемы с перфомансом, код проще поддерживать и тестировать.
👍9👎3
MCP для iOS симулятора

Model-Context Protocol – это дико хайпующий сейчас стандарт для общения LLM с внешними инструментами. Так вот, его прикрутили и к iOS симулятору для взаимодействия с его UI, а значит, ваш AI теперь может самостоятельно взаимодействовать с запущенным приложением – например, заменяя собой QA.
👍384
Как писать git hooks на Swift

На Swift можно писать не только консольные тулы, но и скрипты, которые будут автоматически вызываться либо до, либо после коммита в Git. В статье разбирается пример хука, который не даст коммитить в мастер код, содержащий принты.
👍194💅4
Новый релиз Alex – альтернативы Cursor для Xcode

Вышел новый релиз Alex, про которого я уже рассказывал в канале несколько раз. Новых фичей вагон, так что, если вы еще не попробовали, сейчас самое время!
💅12👍2
Релиз Swift 6.1

👉nonisolated теперь можно применять не только к пропертям и функциям, но и к типам и расширениям.
👉Методы из хедеров ObjC классов теперь можно реализовывать в Swift, используя новое ключевое слово @implementation.
👉Trailing commas теперь поддерживаются не только в коллекциях, но и в кортежах, списках параметров и аргументов, строковых интерполяциях и в других местах.
👉С помощью package traits часть API теперь можно объявлять доступными только для конкретных платформ – например, Embedded или Wasm.
18👍9
Релиз Swiftly 1.0

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

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

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

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

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

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

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

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

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