🇺🇦 iOS Dev UA - спільнота iOS розробників
384 subscribers
398 photos
42 videos
9 files
957 links
Перша україномовна спільнота iOS розробників 🇺🇦

👨‍💻Цікаві матеріали зі світу розробки для продуктів Apple.
Статті по розробці на Swift та SwiftUI. Огляд нових технологій в розробці від Apple.

чат: @iOSDevsUAChat
Ідеї та пропозиції: @SergeyZhuravel
Download Telegram
💡Стаття розбирає сучасні патерни навігації у SwiftUI — NavigationStack, NavigationPath, deep linking і архітектурний підхід до навігації в табах. Якщо раніше навігація часто плуталася між NavigationLink і стеками, то тут пояснюють, як зробити її чистою, передбачуваною та масштабованою для великих застосунків.

👉 https://dev.to/sebastienlato/modern-navigation-in-swiftui-1c8g

🇺🇦 iOSDevUA
👍1👀1
💡Практичний гайд зі створення скріншотів для App Store за допомогою Fastlane

Під час оновлення застосунку часто виникає потреба оновити скріншоти в App Store Connect. Робити це вручну на кількох пристроях і різними мовами — довго, нудно й легко припуститися помилок.

На допомогу приходить фіча snapshot у fastlane, яка дозволяє повністю автоматизувати процес створення скріншотів.

📖 У цій статті — покрокова інструкція: від початкового налаштування до відладки та завантаження матеріалів у стор:
👉 https://buczel.com/blog/fastlane-screenshots-ios/

🇺🇦 iOSDevUA
📖 Втома від AI

Попри те, що AI помітно підвищує продуктивність, це зовсім не означає, що ми почали менше втомлюватися. Навпаки — багато людей відзначають, що виснажуються сильніше, ніж раніше. На це впливають кілька факторів:

👉 Кожна окрема задача робиться швидше, тож за день доводиться “проковтувати” значно більше контексту — а це реально втомлює.
👉 Рев’ю коду стало більше, і це не той тип роботи, який додає енергії — швидше навпаки.
👉 Ми звикли до детермінованих систем, а AI — ймовірнісний. Мозку непросто постійно перемикатися на такий режим.
👉 Постійний FOMO через нескінченні анонси нових інструментів, моделей і підходів.
👉 Відчуття, що до успішного фіналу задачі лишився ще один промпт — і ти знову й знову пробуєш “дотиснути”.

🇺🇦 iOSDevUA
4👍2
📖 Використання EventKit для реалізації списків нагадувань

Щоб додати у застосунок кастомні списки нагадувань, можна підключити фреймворк EventKit і організувати їх так, як зручно користувачу — наприклад, за контекстом, проєктами або пріоритетом.

У цій статті можна подивитися приклад реалізації: як створити інтерфейс, як формувати списки та як взаємодіяти із системними «Нагадуваннями»:
👉 https://www.createwithswift.com/creating-reminder-lists-with-eventkit-from-your-app/

🇺🇦 iOSDevUA
👍1
💡SimTag — спрощуємо роботу з кількома гілками

Ймовірно, ви вже так чи інакше пристосувалися працювати одразу над кількома задачами паралельно — з агентами по-іншому буває складно. Тому тримайте SimTag: невеликий інструмент, який трохи полегшить роботу із симуляторами.

Його ідея проста: для кожного запущеного симулятора додається оверлей із назвою гілки, з якої він був запущений. Це допомагає швидко орієнтуватися й не плутатися, коли одночасно відкрито кілька збірок.

🇺🇦 iOSDevUA
🔥1
💡Sentry купує XcodeBuildMCP

XcodeBuildMCP — одна з найживіших і найпрактичніших спроб “винести” можливості Xcode в руки агентів. Попри те, що в самому Xcode вже з’явився схожий сервер, проєкт не зупинився й продовжував активно розвиватися — і тепер Sentry придбала XcodeBuildMCP разом із його автором.

Це виглядає як справді хороша новина: досвід після придбання EmergeTools показує, що Sentry готові серйозно інвестувати в опенсорс і доводити такі інструменти до дуже сильного рівня.

🇺🇦 iOSDevUA
👍2🔥21
💡Скіл для роботи з Core Data

Тримайте ще один корисний скіл до бібліотеки вашого агента — він допоможе робити менше помилок під час роботи з Core Data. А це особливо цінно, бо, як ви пам’ятаєте, у Core Data будь-який “крок убік” часто перетворюється на складні для відлову креші та дивні побічні ефекти.

🇺🇦 iOSDevUA
🔥5
🔥 Вийшов Xcode 26.3 з інтеграцією ChatGPT та Claude

Де це налаштовується
Завантажити (Apple Silicon)

Замість підписки можна просто вказати API-ключ — така опція підтримується і реально працює.

🇺🇦 iOSDevUA
1🔥1
💡Як створити інструмент для автоматизації за допомогою Swift та ArgumentParser

Невеликий і зрозумілий гайд, який показує, як зібрати CLI-утиліту на Swift: розбір аргументів через ArgumentParser, асинхронні запити, а також приклад парсингу JSON.

📖 Стаття з прикладами тут:
https://tanaschita.com/swift-cli-scripting/

🇺🇦 iOSDevUA
2
🤖 Пишемо coding agent на Swift

Є безплатний епізод Swift Talk, де показують, як зібрати простого універсального coding agent’а на Swift поверх OpenAI API.

Хороший варіант, якщо хочете:
— зрозуміти базову архітектуру агента
— побачити, як організувати виклики API, контекст і відповіді
— і швидко зібрати “першу версію”, яку потім можна розвивати під свої задачі.

🇺🇦 iOSDevUA
💡Робота з мапами в SwiftUI

Apple щороку оновлює MapKit, додаючи нові можливості й даючи розробникам більше контролю над тим, як карти виглядають і поводяться в застосунку.

📖 Наприклад, у цьому матеріалі є одразу два практичні приклади роботи з картами в SwiftUI, а ще — хороший старт для знайомства з модифікаторами MapKit (їх там набагато більше, ніж здається на перший погляд):
https://www.createwithswift.com/creating-maps-in-swiftui-apps-with-mapkit/

До речі, на WWDC 2025 у відео «Go further with MapKit» показали, як саме прокачали пошук і відображення місць у MapKit, представили нові API для геокодування, а також новий фреймворк GeoToolbox.

🇺🇦 iOSDevUA
🎛 Передаємо кастомні параметри й робимо анімації через Metal-шейдери

Щоб почати щось робити з шейдерами в SwiftUI, інколи достатньо просто відкрити офіційну доку. Наприклад, layerEffect — там “з коробки” вже є позиція пікселя + доступ до шару, і цього вистачає, щоб швидко потестити ідеї:

А от справжній контроль починається тоді, коли ви передаєте в шейдер власні параметри — і тут уже можна розвернутися на повну.

📖 У статті нижче розбирають кілька корисних підходів:
— як прокидати свої параметри в шейдер
— як будувати патерни типу шахівниці
— як керувати ефектом через час + трохи математики, щоб отримати плавну анімацію

Якщо ви хотіли додати у UI щось “вау” без важких анімацій — дуже рекомендую глянути 👀

🇺🇦 iOSDevUA
🧪 Скіл по Swift Testing

Так, дайте знати, якщо мені раптом варто перестати постити iOS-скіли 😄 Але чесно — скіли зараз виглядають як новий формат гайдів і best practices: замість того, щоб читати все самостійно, можна “згодувати” це агенту, і він почне писати тести більш осмислено й менш хаотично.

Цей матеріал саме про Swift Testing: як налаштувати агента так, щоб він генерував якісні тести, з нормальною структурою, покриттям кейсів і без зайвого сміття.

Якщо активно делегуєте тестування AI — мастхев у бібліотеку 📚

🇺🇦 iOSDevUA
👍2
💡asc — CLI для App Store Connect

Якщо вам хочеться менше клікати в браузері й більше автоматизувати — зверніть увагу на asc. Це неофіційний CLI-клієнт на Go для роботи з App Store Connect API.

Що вміє:
👉 керувати майже всім, що пов’язано з TestFlight
👉 завантажувати збірки в App Store
👉 менеджерити скріншоти, локалізації та інші метадані
👉 тягнути аналітику й продажі
👉 працювати з Xcode Cloud
👉 і загалом покриває більшість фіч, які зазвичай потрібні в ASC

Зручно, якщо будуєте CI/CD під релізи або хочете навести лад в релізному процесі без зайвої рутини.

🇺🇦 iOSDevUA
🧩 Як працює ASCII-рендеринг

Тримайте неймовірно крутий лонгрід про те, як робити рендеринг зображень, 3D-моделей і анімацій в ASCII — від бази до дуже “дорослих” нюансів.

Усередині розкладають по поличках:
• як підбирати символи під рівні яскравості та контрасту пікселів
• як будувати мапінг “піксель → знак”, щоб картинка читалася
• і чому аліасинг може зіпсувати все (та що з цим робити)

Якщо любите графіку, математику й інженерію “в деталях” — must read 👀

🇺🇦 iOSDevUA
🔧 Як перейти на @Observable і не зламати застосунок

Якщо давно дивитесь у бік @Observable, але страшно чіпати продакшен — ось корисний матеріал (і так, з мемами 😄). У статті нормально пояснюють:
• що таке @Observable і чим він відрізняється від старого підходу
• які проблеми реально вирішує
• як акуратно зробити міграцію, щоб не “розвалити” UI та стейт

Якщо вже мігрували — цікаво, на чому “спіткнулися” у вас 👀

🇺🇦 iOSDevUA
👍2
🛠 DebugSwift — опенсорсний тулкіт для дебагу й оптимізації iOS-застосунків

Натрапив на DebugSwift — open-source набір інструментів, який може стати “швейцарським ножем” для щоденного дебагу.

За описом авторів, усередині є кілька корисних штук, зокрема:
моніторинг мережі (network)
моніторинг продуктивності: метрики в реальному часі на кшталт CPU / FPS, плюс фічі для виявлення витоків пам’яті
• інструменти для тестування інтерфейсу: сітка (grid), ієрархія в’ю, та інші дебаг-оверлеї

🇺🇦 iOSDevUA
👍5
💡Перформанс Core Data vs SwiftData

Автор порівняв швидкодію CRUD-операцій у двох однакових застосунках: один на Core Data, другий на SwiftData. Вийшло доволі показово:

👉 На датасетах до 1 000 записів різниця майже непомітна. Відчутні відмінності починаються вже ближче до 1 000 000 записів.
👉 На великих датасетах SwiftData споживає памʼяті суттєво більше: пікове — приблизно у 7 разів, стабільне — десь у 2,5 раза.
👉 Час старту застосунку в кейсі зі SwiftData може просідати приблизно у 8,5 раза.

Якщо плануєте SwiftData для “важких” локальних баз — варто глянути, щоб розуміти, де можуть бути вузькі місця.

🇺🇦 iOSDevUA
😱3🤣2
🤖 Автор ділиться тим, чого навчився за час постійної роботи з AI-агентами

У статті — особисті спостереження й практичні висновки після того, як AI став щоденним “робочим інструментом”, а не просто іграшкою. Є кілька порад, які можуть зекономити час і нерви, якщо ви теж активно делегуєте задачі агентам.

P.S. Дизлайки — це про небажання приймати еволюцію чи контент реально не зайшов? 😄

🇺🇦 iOSDevUA
👍1
🛠 Автофікс багів через агентів: delivery pipeline для iOS

Автор показує, як зібрав у себе ланцюжок на AI-агентах, де баги не просто знаходяться, а автоматично фіксяться в рамках delivery-пайплайну. По суті — ви вибудовуєте процес так, щоб агент брав проблему, робив зміни, проганяв перевірки й віддавав результат максимально “під ключ”.

Якщо давно хотіли спробувати собі щось подібне — ось вам ідея, чим зайнятися на вихідних 😄

🇺🇦 iOSDevUA
⚙️ Потокобезпечність у Swift, Як не ловити race conditions з блокуваннями, чергами й акторами

Swift дає сильні інструменти для паралельності, але “надійно й швидко” працює тільки тоді, коли ви контролюєте одночасний доступ до даних. Інакше — привіт, гонки, нестабільні баги й краші, які неможливо відтворити 🙃

📖 У статті добре розкладено по поличках:
що таке потокобезпечність
чому це критично для застосунку
звідки беруться конфлікти даних
стратегії в Swift: локи / черги / актори
як сучасна concurrency-модель Swift підвищує безпеку

Якщо у вас десь є “дивні” баги, що зникають при додаванні print() — дуже ймовірно, що це воно 😅

🇺🇦 iOSDevUA
2👍1