ch
Feedback
🇺🇦 iOS Dev UA - спільнота iOS розробників

🇺🇦 iOS Dev UA - спільнота iOS розробників

前往频道在 Telegram

Перша україномовна спільнота iOS розробників 🇺🇦 👨‍💻Цікаві матеріали зі світу розробки для продуктів Apple. Статті по розробці на Swift та SwiftUI. Огляд нових технологій в розробці від Apple. чат: @iOSDevsUAChat Ідеї та пропозиції: @SergeyZhuravel

显示更多
384
订阅者
无数据24 小时
+37
+1130
帖子存档
💡Передавання даних у SwiftUI: порівняння підходів 📖 Маттео Манфердіні ділиться базовими принципами збереження та передачі і
💡Передавання даних у SwiftUI: порівняння підходів 📖 Маттео Манфердіні ділиться базовими принципами збереження та передачі інформації всередині застосунку. Він порівнює різні флоу обміну даними й підходи до властивостей — від сесії WWDC19 до варіанта Криса Ейдхофа, структуруючи матеріал у кілька великих розділів: ➡️ Архітектура та “джерела правди”: де має жити істинний стан застосунку ➡️ Передавання значень у View: пропси, environment, bindings ➡️ Створення та керування станом: @State, @StateObject, @ObservedObject, @EnvironmentObject ➡️ Обхід дерева View: коли підіймаємо стан вище та як уникати проп-ланцюгів Зручний конспект для тих, хто хоче вибудувати прозорий data flow у SwiftUI без «магії» та зайвих залежностей. 🇺🇦 iOSDevUA

💡Як тестувати iOS-застосунки в Zed Продовження серії про налаштування Zed для повноцінної iOS-розробки: цього разу — як конфігурувати запуск тестів для застосунків і Swift-пакетів. Деталі та покрокові інструкції тут 👉 https://luxmentis.org/blog/test-xcode-apps-in-zed/. 🇺🇦 iOSDevUA

💡Створення UIKit-застосунку зі стилем Liquid Glass Більшість великих проєктів поки не переходять на нову стилістику, але дея
💡Створення UIKit-застосунку зі стилем Liquid Glass Більшість великих проєктів поки не переходять на нову стилістику, але деякі топ-апки (наприклад, Telegram) уже частково оновлюють ключові компоненти. Якщо дизайн поки оновлювати не плануєте — нещодавно я писав, як вимкнути «скляний» стиль для ваших проєктів. А от якщо ви готуєтеся адоптити можливості iOS 26, варто знати кілька порад. Наприклад, щоб прибрати ефект скла для кнопок у навбарі, можна використати hidesSharedBackground А щоб візуально розділити групи кнопок, додайте .fixedSpace(). 📖 Ще більше корисних фіч — у цьому розборі: https://appcircle.io/blog/wwdc25-build-a-uikit-app-with-the-new-liquid-glass-design. Перехід у будь-якому разі буде не надто швидким (потрібно підтримувати і старі опції), але, як бачимо, для UIKit нові можливості цілком реально впроваджувати вже зараз. 🇺🇦 iOSDevUA

💡Про увагу до деталей від Apple З кожним новим релізом macOS та iOS легендарна «увага до дрібниць» у Apple, здається, тане.
💡Про увагу до деталей від Apple З кожним новим релізом macOS та iOS легендарна «увага до дрібниць» у Apple, здається, тане. Останній випуск із Liquid Glass лише погіршив ситуацію — як у загальному UX, так і за планкою якості. У статті — найпоказовіші приклади того, наскільки все просіло. 🇺🇦 iOSDevUA

💡Memory Integrity Enforcement — нова технологія безпеки від Apple Наші пристрої зберігають багато конфіденційних даних, тож їх потрібно захищати. Якщо у застосунку є вразливості, зловмисники можуть використати їх, аби дістатися до даних у вашому app або його розширеннях. Багато команд проходять регулярні аудити безпеки й перевіряють джейлбрейк чи наявність підозрілих процесів. Нещодавно в Xcode з’явилася опція Enhanced Security (її можна увімкнути в проєкті), що допомагає прибрати чимало поширених ризиків. Тепер Apple представила Memory Integrity Enforcement (MIE) — підхід, який не лише підсилює захист, а й допомагає виявляти складні для діагностики помилки роботи з пам’яттю та усувати їх у коді. 📺 Переглянути сесію можна на сайті Apple або на YouTube. 📖 Додатковий розбір. 🇺🇦 iOSDevUA

💡Swift Transformers 1.0 Бібліотека swift-transformers від Hugging Face, що спрощує роботу з локальними LLM на Swift, отримала перший стабільний реліз. Окрім базових примітивів для інференсу й керування моделями, з її допомогою можна завантажувати та піднімати в пам’яті будь-які моделі з Hugging Face. 🇺🇦 iOSDevUA

💡Приклади використання Foundation Models Framework Нещодавно я ділився прикладом з улюбленого застосунку рецептів, де Foundation Models допомагають структурувати контент. А Apple підготувала свою добірку кейсів: від спрощеного логування силових тренувань до підбору музики за вмістом відео — все прямо на пристрої з повагою до приватності. 🇺🇦 iOSDevUA

📦 xcsift — оптимізація логів Xcode для AI Контекст — водночас найкорисніший і найдорожчий ресурс у роботі з AI-агентами: над
📦 xcsift — оптимізація логів Xcode для AI Контекст — водночас найкорисніший і найдорожчий ресурс у роботі з AI-агентами: надто великий контекст погіршує якість відповіді й підвищує вартість кожного запиту до LLM. xcsift — це CLI-утиліта, що перетворює логи xcodebuild на короткий, зрозумілий JSON із усією ключовою інформацією. Менше шуму → менше токенів → дешевші й точніші AI-ітерації. 🇺🇦 iOSDevUA

💡Як керувати контекстом у Foundation Models Дуже докладні Tech Notes від Apple про найкращі практики оптимізації малого контекстного вікна локальної LLM: як стискати підказки, прибирати зайве, використовувати резюме та ключові токени, щоб умістити максимум корисних даних. 🇺🇦 iOSDevUA

💡Кешування зображень у SwiftUI Ще з iOS 15 з’явився дуже корисний AsyncImage (дозволяє завантажувати картинки без блокування
💡Кешування зображень у SwiftUI Ще з iOS 15 з’явився дуже корисний AsyncImage (дозволяє завантажувати картинки без блокування інтерфейсу), але є нюанс: під час швидкого скролу вгору-вниз зображення може завантажуватися повторно. У таких випадках без кешу не обійтися. Часто бачу, як заради цього підтягують зайві залежності, хоча все значно простіше — особливо, якщо нам достатньо кешу лише в пам’яті (а запис на диск додає не так вже й багато складності). 📖 У цій статті розглянуто базовий, але дієвий підхід із використанням NSCache та його налаштування — чудово підходить для новачків: https://www.createwithswift.com/image-caching-in-swiftui/ 🇺🇦 iOSDevUA

💡Swift Profile Recorder В екосистемі серверного Swift з’являються нові офіційні інструменти. Цього разу — in-process профілювальник, який просто вбудовується в будь-який сервіс і віддає результати профілювання через cURL-запити. Ідеально для швидкої діагностики продуктивності без складного оверхеду. 🇺🇦 iOSDevUA

💡Відтворюємо ефект Apple Intelligence — розбір + код В новій iOS можна помітити анімований контурний «glow», який динамічно підсвічує форми та компоненти. 📖 У цьому розборі автор пробує відтворити ефект у SwiftUI за допомогою поєднання модифікаторів background і overlay, а також ділиться готовим розширенням: https://livsycode.com/swiftui/an-apple-intelligence-style-glow-effect-in-swiftui/ 🛠 Код доступний тут: https://github.com/Livsy90/IntelligenceGlow/tree/main 🇺🇦 iOSDevUA

💡Чому зміна розміру зображень на macOS у 5 разів повільніша, ніж на iOS Дуже якісне пояснення, чому ресайз через NSImage на macOS займає неприйнятно багато часу, тоді як у симуляторі iOS все працює блискавично. Розбір причин і більш швидких підходів (зокрема через CGImageSource) — всередині. 🇺🇦 iOSDevUA

💡Легка демонстрація «липкого» ефекту в SwiftUI 📖 Мінсан Чой поділився оригінальним підходом до реалізації gooey-ефекту в інтерфейсі — і все це без Metal 😉 Дивитися пост 🛠 Вихідний код доступний на GitHub: radiofun/gooeyblobs — Gooey.swift. 🇺🇦 iOSDevUA

💡Створення кастомних контролів у SwiftUI У порівнянні з UIKit сьогодні набагато простіше зібрати власний елемент керування —
💡Створення кастомних контролів у SwiftUI У порівнянні з UIKit сьогодні набагато простіше зібрати власний елемент керування — під будь-які потреби. Джордан Морган пропонує підхід, де кожен контрол має відповідати трьом правилам: 1️⃣ Легко вивчити — якщо взаємодія неочевидна, користувачі нею не користуватимуться. 2️⃣ Запам’ятовуваність — якщо немає сильної причини відходити від системного UI, варто двічі подумати, перш ніж робити своє. 3️⃣ Доступність — елемент має працювати для всіх; якщо це неможливо, можливо, його не слід реалізовувати. 🇺🇦 iOSDevUA

💡Немає нічого гіршого за Xcode Якщо раптом забули — ось нагадування: мало хто робить гірший дев-тулчейн, ніж Apple, і з рока
💡Немає нічого гіршого за Xcode Якщо раптом забули — ось нагадування: мало хто робить гірший дев-тулчейн, ніж Apple, і з роками ситуація, здається, лише погіршується. 🇺🇦 iOSDevUA

💡AppMigrationKit — новий фреймворк для перенесення даних на Android Експансія Apple триває: щойно анонсували фреймворк для експорту даних застосунку на інший пристрій або імпорту з іншої платформи. Щоб брати участь у кросплатформенній міграції, потрібно зробити розширення, що відповідає протоколу AppMigrationExtension і принаймні одному з його підпротоколів. Вони визначають, чи застосунок імпортує, експортує, або робить обидва. Поки деталей небагато, але ключові умови вже відомі: • AppMigrationKit підтримує міграцію лише з/на не-Apple платформи (наприклад, Android). • Система не використовує фреймворк для перенесення між пристроями iOS чи iPadOS. • Немає функціональності у додатках iOS, що працюють у visionOS або macOS на Apple silicon. • Виклики з Mac Catalyst ігноруються. 📖 Інші подробиці — в офіційній документації: https://developer.apple.com/documentation/appmigrationkit. 🇺🇦 iOSDevUA

💡Підтримка автодоповнення в Swift Argument Parser Swift Argument Parser — бібліотека для створення CLI-утиліт на Swift із зручними механізмами опису вхідних параметрів. І найприємніше: якщо ви вже її використовуєте, майже «задарма» отримуєте автокомпліт команд і їхніх аргументів у терміналі. Це помітно пришвидшує роботу й зменшує кількість помилок у ввідних параметрах. 🇺🇦 iOSDevUA

💡Реалізація перетягування елементів у SwiftUI Застосувань цьому механізму безліч: від впорядкування фото в альбомах до побудови таск-менеджера на кшталт Trello. Підхід із використанням стандартних модифікаторів onDrag та onDrop має низку переваг. Зокрема, коли нам важлива робота з даними (а не лише візуальне пересування елементів) і коли застосунок оперує складними структурами даних. 📖 У цьому матеріалі — покрокова реалізація на реальному прикладі, яка демонструє, як організувати drag & drop із коректним оновленням моделі. 🇺🇦 iOSDevUA

📦 Керуємо симуляторами через CLI AXe — це консольний тул для керування iOS-симулятором через механізми accessibility. З його допомогою можна емулявати натискання, вводити текст, виконувати жести та багато інших дій прямо з терміналу. Чому це корисно • Дозволяє автоматизувати тестування інтерфейсів і поведінки застосунку. • Підтримує широкий набір команд, які імітують дії користувача. • Може бути інтегрований у пайплайни CI/CD або використаний для експериментів із AI-агентами, які зможуть самостійно перевіряти роботу вашої апки. 🚀 Виглядає як потужний інструмент для тих, хто хоче підняти автоматизацію тестів на новий рівень і делегувати рутинні перевірки агентам або скриптам. 🇺🇦 iOSDevUA

🇺🇦 iOS Dev UA - спільнота iOS розробників - Telegram 频道 @iosdevsua 的统计与分析