🇺🇦 iOS Dev UA - спільнота iOS розробників
前往频道在 Telegram
Перша україномовна спільнота iOS розробників 🇺🇦 👨💻Цікаві матеріали зі світу розробки для продуктів Apple. Статті по розробці на Swift та SwiftUI. Огляд нових технологій в розробці від Apple. чат: @iOSDevsUAChat Ідеї та пропозиції: @SergeyZhuravel
显示更多384
订阅者
无数据24 小时
+37 天
+1130 天
帖子存档
💡The System Design Primer — велика колекція матеріалів для проєктування складних систем
Досвід роботи зі складними та масштабованими проєктами приходить із практикою, і це одна з тих навичок, яку складно освоїти без реальних кейсів. Навіть на співбесідах, коли просять спроєктувати систему, рідко очікують детального розбору архітектури на кілька рівнів глибини.
Знайшов чудовий опенсорс-репозиторій (288 000+ зірок ⭐️), де ком’юніті аналізує популярні застосунки та надає приклади для проєктування масштабованих систем.
🔗 Корисний ресурс на GitHub.
🇺🇦 iOSDevUA
💡Створюємо ефекти, як в Apple Invites
Нещодавно Apple випустила новий додаток, і якщо вам цікаво, як реалізувати анімований паралакс під час скролу або хочеться більше дізнатися про шейдери, цей проєкт точно вартий уваги.
📖 У ньому детально розглядаються різні візуальні ефекти в SwiftUI, кастомні переходи, робота з кольорами та розширені можливості шейдерів і рендерингу тексту.
📺 Реалізація натхненна сесією WWDC24, де розкриваються секрети створення плавних анімацій.
🇺🇦 iOSDevUA
💡Створення інтерактивних віджетів за допомогою App Intents
App Intents — це фреймворк, який дозволяє інтегрувати функції вашого додатка в різні системні сервіси: Siri, Spotlight, віджети, елементи керування тощо.
🇺🇦 iOSDevUA
💡Локалізація iOS-додатка: корисні поради та кращі практики
Локалізація — це не лише переклад інтерфейсу, а й плюралізація, граматичні відмінки (canInflect) та коректне форматування чисел, дат і валют.
📖 У цій статті розглядаються ключові нюанси роботи з локалізацією, які допоможуть зробити додаток зручнішим для користувачів з різних регіонів. Радимо зберегти цей матеріал для подальшого використання.
🇺🇦 iOSDevUA
💡Малювання карт у Swift Charts
Swift Charts дозволяє будувати не лише графіки, а й карти з регіонами, використовуючи набір координат.
🗺 Можливості:
🔹 Малювання карт на основі координат.
🔹 Додавання інтерактивності – наприклад, підсвічування регіонів при натисканні.
📖 Детальніше про реалізацію можна дізнатися в статті: Drawing Maps with Swift Charts.
🇺🇦 iOSDevUA
💡Динамічний градієнт на основі середнього кольору зображення
Робота з градієнтами може стати непростим завданням як для дизайнерів, так і для розробників.
📖 У цьому матеріалі розглядається цікавий підхід до створення динамічного градієнта, який змінюється відповідно до середнього кольору зображення.
🛠 Код реалізації можна знайти тут: GitHub.
🇺🇦 iOSDevUA
💡Оновлення Swift Playground для iPad
Apple вперше за тривалий час оновили Swift Playgrounds, змінивши його назву на Swift Playground.
🔹 Головне нововведення – підтримка iOS 18, що дозволяє працювати з останніми можливостями Swift.
🔹 Також внесено дрібні покращення в інтерфейсі для більш зручної взаємодії.
📖 Деталі оновлення можна переглянути тут: Swift Playground 4.6.
🇺🇦 iOSDevUA
💡Основи роботи з Core Image
Core Image — це потужний фреймворк для аналізу та обробки зображень. Він пропонує високопродуктивні інструменти для роботи з фото та відео: від базових фільтрів до складних графічних операцій.
📖 У цьому матеріалі можна ознайомитися з основами Core Image, зрозуміти еволюцію фреймворку та побачити його використання на практиці.
🇺🇦 iOSDevUA
🎆 Нове розширення для Swift у Visual Studio Code
📢 Apple продовжує розширювати можливості Swift! У блозі компанії вийшла новина про оновлене розширення для Visual Studio Code.
🔹 Головна мета — зробити розробку Swift-додатків доступною на всіх платформах.
🔹 Для тих, хто вже працює у VS Code, оновлення забезпечує плавний перехід.
🚀 Це ще один важливий крок у розвитку екосистеми Swift!
🇺🇦 iOSDevUA
💡Для чого потрібні Preferences у SwiftUI – розбір прикладів
Зазвичай для двостороннього зв’язку між в’юшками в SwiftUI використовують
@State та @Binding. У більшості випадків це працює без проблем, але у складних ієрархіях може викликати антипатерн prop drilling, коли дані доводиться передавати через кілька рівнів вкладеності.
🔹 У таких ситуаціях корисним рішенням стають Preferences, які дозволяють передавати стан зверху вниз без зайвих прив’язок.
📖 У цій статті розглядаються практичні приклади використання Preferences, їхні переваги та можливі труднощі при переході на Swift 6.
🇺🇦 iOSDevUA💡Параметризовані тести в Swift
Параметризовані тести дозволяють запускати один і той самий тест із різними вхідними даними, не додаючи зайвого коду. Наприклад, можна протестувати всі можливі значення
enum. Достатньо задати колекцію параметрів для тесту, і він автоматично виконається для кожного з них.
🇺🇦 iOSDevUACopilot тепер підтримує кастомні інструкції до репозиторію
🚀 GitHub додав можливість налаштовувати Copilot під специфіку вашого проєкту!
🔹 Достатньо створити файл
.github/copilot-instructions.md та вказати в ньому:
✔️ Технологічний стек
✔️ Кодстайл і стандарти
✔️ Очікувану поведінку асистента
🛠 Після цього Copilot враховуватиме ці інструкції під час роботи з кодом.
📖 Деталі оновлення: GitHub Changelog.
🇺🇦 iOSDevUA💡SwiftUI + Firebase: створюємо застосунок “Нагадування”
📌 У цьому покроковому гайді показано, як розробити to-do застосунок на SwiftUI з інтеграцією Firebase.
⚡️ Основні етапи навчання:
1️⃣ Інтерфейс користувача – основи MVVM-архітектури та створення списку задач.
2️⃣ Кастомні компоненти – розділення UI на відокремлені View.
3️⃣ Інтеграція Firebase – налаштування бекенду та тестування локально.
4️⃣ Збереження даних у Cloud Firestore – додавання, редагування та видалення даних.
5️⃣ Dependency Injection – управління залежностями у проєкті.
6️⃣ Аутентифікація користувачів – підтримка анонімного входу, Sign in with Apple та прив’язка акаунтів.
🇺🇦 iOSDevUA
💡Як дебажити диплінки та Quick Actions
📌 При запуску додатку через Xcode дебаггер підключається автоматично, але при закритті – відключається. Це створює проблему для тестування функцій, які залежать від альтернативних способів запуску, наприклад, Deep Links або Quick Actions.
💡 Рішення – налаштувати в схемі запуску опцію “Wait for executable to be launched”. Це дозволить запускати додаток через диплінк чи Quick Actions, а потім приєднувати дебаггер вручну.
👉 https://tanaschita.com/xcode-debugging-app-restart/
🇺🇦 iOSDevUA
💡Глосарій по Swift Concurrency
Matt Massicotte зібрав у одному місці всі ключові терміни, пов’язані зі Swift Concurrency.
📖 У своєму матеріалі він пояснює не лише основи
async/await та actor, а й менш очевидні концепції, такі як @unchecked, for-await тощо. До кожного терміна додається коротка довідка: що це таке, як використовується та в якому Swift Evolution пропозалі було реалізовано.
💡 Корисний ресурс для розробників, які працюють зі Swift Concurrency або лише починають знайомство з багатопотоковістю у Swift.
🇺🇦 iOSDevUA💡Ghostty – новий швидкий та кросплатформений термінал
Екс-засновник HashiCorp представив Ghostty – сучасний термінал, що виділяється серед альтернатив. Його головні переваги:
🚀 Висока продуктивність – працює швидко навіть з важкими процесами.
💡 Кросплатформеність – підтримує macOS та Linux.
🎨 Гнучкі налаштування – вкладки, автоперемикання темної теми, кастомізація.
🛠 Додаткові можливості – інтеграція з інструментами та розширені API.
👀 Вже спробував – і поки що дуже подобається!
🇺🇦 iOSDevUA
💡Відладка застосунку з обмеженим доступом
Розробник Bryce Bostwick поділився цікавим досвідом щодо можливості відладки застосунку, який захищений від аналізу.
⚠️ Обмеження в додатку:
1️⃣ Блокує підключення дебагера.
2️⃣ Автоматично закривається при спробі впровадження коду.
3️⃣ Викликає краш пристрою, якщо на ньому встановлено джейлбрейк.
📖 Що з цього вийшло? Детальний розбір у відео або статті.
💡 Корисно для розробників, які створюють захищені застосунки, або хочуть перевірити свій продукт на стійкість до таких атак.
🇺🇦 iOSDevUA
💡Як запустити CarPlay у McLaren
🚗 Розробник зіткнувся з проблемою – його новий McLaren не підтримував CarPlay.
🔍 Замість того, щоб миритися з цим, він провів реверс-інжиніринг протоколів медіасистеми, розібрався, як працює передача аудіо, і самостійно додав підтримку CarPlay.
📖 У статті детально розповідається про цей процес – від дослідження системи до її інтеграції. Вражаючий технічний кейс для тих, хто любить нестандартні рішення!
🇺🇦 iOSDevUA
💡Каталог Swift-пакетів із підтримкою Android
Команда Skip продовжує розширювати можливості Swift для Android-розробки. Вони вже надіслали PR для додавання Android-таргета в низку бібліотек, а також створили окремий сайт, де можна стежити за прогресом міграції екосистеми Swift на Android.
🇺🇦 iOSDevUA
💡Оновлення в роботі Background Uploads в iOS
📤 Завантаження файлів у фоновому режимі в iOS залишається однією з найбільш складних тем через недостатню документацію.
🔍 У мережі є чудовий розбір, який пояснює деталі роботи URLSession у фоновому режимі. Однак деякі поради в ньому вже застаріли.
📖 У цій статті розглядаються останні зміни в механізмах фонового завантаження та надаються актуальні рекомендації.
🇺🇦 iOSDevUA
现已上线!2025 年 Telegram 研究 — 年度关键洞察 
