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
Браузер Ladybird перепишут на Swift

Swift начинают выбирать на замену С++ как альтернативу Rust на реальных проектах. В этот раз про свой выбор рассказывают разработчики независимого браузера Ladybird, ядро которого они планируют постепенно переписать с С++ на Swift.
👍283
Как записывать крутые демо видео

Подборка рекомендаций по тому, как записывать топовые видео с демками новых фичей. Мне нравится сама идея того, что они получаются гораздо более живыми, когда вы захваьываете руку с устройством.
💅13
Релиз Skip 1.0

Skip, инструмент, транспилирующий Swift в Kotlin, а SwiftUI в Compose, релизнул версию 1.0. Сам по себе Skip платный и частично closed source, но с релизом стабильной версии появился новый бесплатный тариф для инди.

Вот тут можно посмотреть, как Skip работает.
💅43👍287👎2
Пробуем Swift для Embedded разработки

Помимо Apple Intelligence на WWDC были и другие заметные анонсы. Один из них – использование Swift для программирования микроконтроллеров и прочего эмбеда. По ссылке – несколько видеотуториалов, рекомендации по покупке железок для старта и их траблшутингу.
🔥26💅12👍21👎1
Пошаговый разбор Swift Concurrency на примере загрузки изображения

Загрузка изображения из сети – одна из самых базовых задач, с которыми сталкивается разработчик. На ее примере автор разбирает основные концепции Swift Concurrency, чтобы отучить вас от магического мышления.
👍192
Рекурсивные enum'ы

Ключевое слово indirect позволяет реализовывать рекурсию в enum'ах. В статье разбирается, как с использованием этого свойства можно смоделировать файловую систему.
👍21
Tophat – open source проект для распространения билдов внутри компании

Помните, я на прошлой неделе рассказывал про Tuist Previews? Так вот, Shopify опенсорснули очень похожую штуку. Все ветки автоматически билдятся на CI, артефакты заливаются в отдельное хранилище, ссылки на них линкуются к PR, и дополнительно доступны через отдельное macOS приложение. Выглядит очень удобно, посмотрите!
20🔥6👍2
Простое приложение на Swift/WebAssembly

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

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

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

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

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

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

В Xcode 16 появилась возможность программно задавать настройки редактора, которые зависят от текущего открытого проекта. Например, в одном проекте максимальная длина строки кода может быть 120 символов, а в другом – без ограничений.
👍63💅37🔥162
Как обучить команду SwiftUI

Команда, решившая переехать с UIKit на SwiftUI, делится опытом системного подхода к переезду. До того, как сесть за масштабный рефакторинг, ребята организовали полноценное обучение всей команды, в основе которого решало совместное решение близких к реальным задач.
👎279👍6💅3
Роадмап Vapor 5

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

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

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

📆Митап пройдет 17 сентября
10👍6👎5🔥3