7 Aug 2026, 06:15 UTC239 views1 reactionsread 7 August 2026 An Even Closer Look at Protocols and Global Actors
❓ Как лучше задавать изоляцию @MainActor для протоколов в Swift — всей протоколу, отдельным требованиям или вовсе не ставить атрибут?
ℹ️ На примере протокола для показа ошибок автор сравнивает «whole‑protocol» (удобно и сокращает код, но раньше мешало конформить акторы) и «per‑requirement» (более гибко, явнее поведение).
⚙️ Не вешайте @MainActor автоматически - сн…
🤔1
5 Aug 2026, 06:02 UTC402 views3 reactionsread 7 August 2026 Photo
Splitting Large SwiftUI Views in the Apple's way
🔍 Интересная статья, где рассказывают, что для производительности в SwiftUI важнее выделять отдельные структуры View с узкими входными данными, чем разбивать большой body на вычисляемые переменные или вспомогательные функции с @ViewBuilder. Когда меняется состояние, SwiftUI пересчитывает body самого внутреннего типа View, поэтому все вычисляемые поля внутри того же st…
👍3
3 Aug 2026, 06:02 UTC502 views4 reactionsread 7 August 2026 Liquid Glass: A Field Guide to UIKit Compatibility Pitfalls
🖥 Если все еще не мигрировали на Liquid Glass на UIKit - статья для вас: практические проблемы адаптации UIKit на iOS 26, замеченные автором в реальном проект.
❓ Главные кейсы - кнопки навигации, таббар и взаимодействие с WKWebView. Для UIBarButtonItem с customView на iOS 26 наблюдались искажение размеров и исчезновение цветов: решение - полностью «изолир…
👍4
31 Jul 2026, 06:04 UTC560 views7 reactionsread 7 August 2026 Saving lives with enums
ℹ️ Статья показывает простую, но часто забываемую практику при работе с enum в Swift - не прятать случаи под default и не полагаться на прямое сравнение (==). Автор объясняет, что при добавлении новых кейсов компилятор не предупредит об уязвимых местах, если вы везде использовали default или ==. Это может привести к логическим ошибкам - в примере с мороженым человек с аллергией может получить…
👍7
29 Jul 2026, 06:01 UTC622 views10 reactionsread 7 August 2026 Photo
Сейчас будет горячо: нагрев iOS-устройств как продуктовая метрика
Зачем собирать thermal‑метрику в iOS и как? (Картинка передает суть 🙂)
🔴 Вместо попыток мерить температуру в градусах автор предлагает использовать ProcessInfo.ThermalState - системную оценку теплового давления с четырьмя состояниями (nominal, fair, serious, critical). ThermalState нельзя перевести в градусы, но оно уже нормализовано между моделями и…
👍10
27 Jul 2026, 06:00 UTC559 views6 reactionsread 7 August 2026 Introducing the Safari MCP server for web developers
ℹ️ Safari MCP‑сервер в бета‑версии Safari 27 и Safari Technology Preview 247 - это реализaция Model Context Protocol, которая позволяет LLM‑инструментам подключаться к окну Safari и получать реальную информацию о странице: DOM, сетевые запросы, скриншоты и консольные логи. Для iOS‑разработчика практическая польза такая: меньше ручных прогонов сценариев, быстрее пр…
🤔4🔥2
24 Jul 2026, 06:00 UTC652 views5 reactionsread 7 August 2026 How did Apple cut launch time by 30% in iOS 27?
🔼 Время запуска приложения - одна из самых важный метрик, которую многие не оптимизируют. Есть три вида запуска - cold, warm, resume. А сам процесс делится на до‑main (dyld, mmap, фиксация символов, статические инициализаторы) и после‑main (создание UIApplication, сцены, рендер первого кадра).
🔍 В статье автор показывает практическое сравнение трейсов запуска iOS 26 …
⚡5
22 Jul 2026, 06:00 UTC658 views2 reactionsread 7 August 2026 Swift 6.2 против вашего оптимизатора: разбираемся с InlineArray, Span и strict memory safety на замерах
❓ Это не ещё одна сухая статья про ARC - автор взял три нововведения Swift 6.2, связанных с памятью, и проверил их «в бою»: замеры в release‑сборке, анализ ассемблера и SIL, перцентили вместо среднего, и честные проверки на оптимизатор.
❗️ Главная мысль: часто оптимизатор уже делает то, что обещают новые фичи, по…
👍2
21 Jul 2026, 06:01 UTC625 views2 reactionsread 7 August 2026 User Diagnostics Reports: Solving app bugs faster with AI Agents
⚙️ Diagnostics — открытый инструмент для встроенной генерации диагностических отчётов, которые пользователи могут прикреплять к письму в поддержку. Отчёт создаёт подробный HTML с системной информацией (версия ОС и приложения, язык, свободное место, тип устройства), сессиями и логами, где есть фильтрация и выделение ошибок.
⚠️ Особенность — «умные подс…
👍2
17 Jul 2026, 06:04 UTC756 views5 reactionsread 7 August 2026 Photo
Что такое View в SwiftUI
👀 SwiftUI.View — это протокол с ассоциированным типом Body, то есть каждое представление должно объявить, какого типа его body. Это важно: View — не «готовый UI-элемент», а описание интерфейса. Поэтому тип body определяет, что именно будет отображаться, а само представление — легковесная декларация, а не непосредственный объект UIKit/AppKit.
⚙️ Проблема с ветвлениями и some View решается не…
🔥5
15 Jul 2026, 06:00 UTC675 views5 reactionsread 7 August 2026 The hidden cost of unstable SwiftUI environment defaults
Warning
Storing a class type in '@Entry var logger' may invalidate dependents on every update because the default value is reallocated on every access. Initialize the default value elsewhere and reference it from the '@Entry' declaration.
⚠️ Новая подсказка компилятора в Xcode 27 — предупреждение для @Entry, когда в качестве значения по умолчанию создаётся э…
👍5
13 Jul 2026, 06:01 UTC670 views4 reactionsread 7 August 2026 Defer in Swift explained with Code Examples
👍 В очередной раз база про ключевое слово defer в Swift и напоминание, почему его стоит чаще использовать — особенно после появления поддержки await внутри defer в Swift 6.4.
❓ Главная идея: defer гарантирует выполнение очистки при выходе из области видимости, причём несколько defer выполняются в обратном порядке; в Swift 6.4 такие блоки могут выполнять асинхронную работу…
🔥3👎1
Showing the 12 most recent of 20 posts we hold for @swift_ioss. View and reaction counts are the latest single reading for each post, not a live figure, and a recent post is still accumulating both. A view count marked ≈ was rounded by Telegram before we ever saw it — t.me prints views in full below 1,000 and to three significant figures above, so ≈1,200,000 means somewhere between 1,150,000 and 1,249,999. Unmarked counts are exact. Text is reproduced from the public post preview and truncated for length.