💡Системний промпт для Apple Intelligence
Інженери в Apple, так само як і всі інші, не дуже добре розуміють, як взагалі працює LLM.
🇺🇦 iOSDevUA
Інженери в Apple, так само як і всі інші, не дуже добре розуміють, як взагалі працює LLM.
🇺🇦 iOSDevUA
This media is not supported in your browser
VIEW IN TELEGRAM
💡Інтеграція Live Activity і Dynamic Island в iOS: докладний посібник
📖 У масштабній статті описані етапи, які дозволяють ефективно інтегрувати Live Activities та Dynamic Island у додаток для iOS.
Плюс у тому, що розглянуто кожен крок: від обмежень дизайну до обробки оновлень.
📺 Також матеріал доступний у форматі відео.
🇺🇦 iOSDevUA
📖 У масштабній статті описані етапи, які дозволяють ефективно інтегрувати Live Activities та Dynamic Island у додаток для iOS.
Плюс у тому, що розглянуто кожен крок: від обмежень дизайну до обробки оновлень.
📺 Також матеріал доступний у форматі відео.
🇺🇦 iOSDevUA
❤5👍1
🚀 Swift Pathway – офіційний гайд по мові
Apple випустили чудовий вступний гайд по Swift, який можна надсилати всім, хто цікавиться цією мовою: розбір базових концепцій та фіч, сумісність з різними платформами та безліч посилань на детальні матеріали по кожній темі.
🇺🇦 iOSDevUA
Apple випустили чудовий вступний гайд по Swift, який можна надсилати всім, хто цікавиться цією мовою: розбір базових концепцій та фіч, сумісність з різними платформами та безліч посилань на детальні матеріали по кожній темі.
🇺🇦 iOSDevUA
👍1
💡swift-format в Xcode 16
У Xcode 16 з’явився вбудований автоформаттер для коду. Автор статті порівнює його результати з SwiftLint та Prettier і розбирає, як правильно налаштувати його для вашого проєкту.
🇺🇦 iOSDevUA
У Xcode 16 з’явився вбудований автоформаттер для коду. Автор статті порівнює його результати з SwiftLint та Prettier і розбирає, як правильно налаштувати його для вашого проєкту.
🇺🇦 iOSDevUA
👍3❤1🔥1
💡Чому xcodebuild працює повільніше в GUI Xcode
Якщо ви збираєте iOS додаток на CI або з консолі, не відкриваючи Xcode, ви безпосередньо використовуєте xcodebuild. І є концептуальна проблема – інкрементальні білди працюють суттєво повільніше, ніж при збірці з Xcode. Це в основному спричинено тим, що Xcode використовує набір приватних API для того, щоб тримати сервіс постійно прогрітим, а в CLI його доводиться щоразу запускати вручну. Однак є кілька способів трохи покращити ситуацію, які і розглядаються в статті.
🇺🇦 iOSDevUA
Якщо ви збираєте iOS додаток на CI або з консолі, не відкриваючи Xcode, ви безпосередньо використовуєте xcodebuild. І є концептуальна проблема – інкрементальні білди працюють суттєво повільніше, ніж при збірці з Xcode. Це в основному спричинено тим, що Xcode використовує набір приватних API для того, щоб тримати сервіс постійно прогрітим, а в CLI його доводиться щоразу запускати вручну. Однак є кілька способів трохи покращити ситуацію, які і розглядаються в статті.
🇺🇦 iOSDevUA
Medium
Why is xcodebuild slower than the Xcode GUI?
There is a bug, but also it’s designed to be that way
❤1👍1
💡Локальні LLM для iOS розробки
У статті розглядається, як завантажити локальну безкоштовну модель, налаштувати її та інтегрувати з Alex Sidebar.
🇺🇦 iOSDevUA
У статті розглядається, як завантажити локальну безкоштовну модель, налаштувати її та інтегрувати з Alex Sidebar.
🇺🇦 iOSDevUA
Daniel's Journal
How to Set Up a Local AI Model with Xcode, Ollama, Qwen2.5-Coder & Alex Sidebar
I wanted to test out Alex Sidebar (eg a desktop client that aims to enable Cursor like features in Xcode) to explore how well a local custom model could perform during development.
💡Оптимальний спосіб пошуку входження рядка за користувацьким запитом
У різних мовах можуть бути різні варіанти написання одного й того ж терміну. Тому, при реалізації пошуку входжень підрядка за запитом користувача, найкраще скористатися функцією
🇺🇦 iOSDevUA
У різних мовах можуть бути різні варіанти написання одного й того ж терміну. Тому, при реалізації пошуку входжень підрядка за запитом користувача, найкраще скористатися функцією
localizedStandardRange(of:). Вона імітує стандартну поведінку пошуку в iOS, ігноруючи особливості написання та діакритичні знаки.🇺🇦 iOSDevUA
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
💡Підбірка експериментальних анімацій на SwiftUI з кодом
😎 Майкл Лі — дизайнер, який любить створювати прототипи з нестандартними підходами.
Нещодавно він зробив відкритий доступ до всієї колекції (і обіцяє продовжувати її поповнювати).
🛠 Ознайомитися з прикладами можна на GitHub.
🇺🇦 iOSDevUA
😎 Майкл Лі — дизайнер, який любить створювати прототипи з нестандартними підходами.
Нещодавно він зробив відкритий доступ до всієї колекції (і обіцяє продовжувати її поповнювати).
🛠 Ознайомитися з прикладами можна на GitHub.
🇺🇦 iOSDevUA
❤2
💡Оптимізація процесу компіляції та виконання тестів у Xcode
⏳ Компіляція проєктів Xcode може займати багато часу (особливо після очищення кешу).
При цьому час компіляції зазвичай зростає динамічно разом з розширенням проєкту, а швидкість збірок часто підвищується лише завдяки оновленню апаратного забезпечення, що є дорогим процесом.
Протягом багатьох років у Tuist вкладали ресурси в розв’язання цієї проблеми, використовуючи найбільш оригінальний і економічно ефективний підхід за допомогою фіч Xcode.
📖 У цій статті розробники з Tuist пояснюють, що саме може уповільнювати швидкість збірки проєктів, які кроки можна зробити та чому прев’ю в SwiftUI можуть зникати через проблеми з билд-системою самого Xcode.
🇺🇦 iOSDevUA
⏳ Компіляція проєктів Xcode може займати багато часу (особливо після очищення кешу).
При цьому час компіляції зазвичай зростає динамічно разом з розширенням проєкту, а швидкість збірок часто підвищується лише завдяки оновленню апаратного забезпечення, що є дорогим процесом.
Протягом багатьох років у Tuist вкладали ресурси в розв’язання цієї проблеми, використовуючи найбільш оригінальний і економічно ефективний підхід за допомогою фіч Xcode.
📖 У цій статті розробники з Tuist пояснюють, що саме може уповільнювати швидкість збірки проєктів, які кроки можна зробити та чому прев’ю в SwiftUI можуть зникати через проблеми з билд-системою самого Xcode.
🇺🇦 iOSDevUA
💡Параметризовані тести в swift-testing
Параметризовані тести — зручний спосіб запускати відразу кілька схожих тестів з однаковою логікою, але з різними вхідними даними. Swift Testing дає змогу задавати ці параметри за допомогою спеціального макросу, замість того щоб визначати їх вручну в тілі тесту. Це робить репорти набагато зрозумілішими.
У статті також розглядається, як управляти логікою комбінації параметрів, коли на вхід подається кілька значень одночасно.
🇺🇦 iOSDevUA
Параметризовані тести — зручний спосіб запускати відразу кілька схожих тестів з однаковою логікою, але з різними вхідними даними. Swift Testing дає змогу задавати ці параметри за допомогою спеціального макросу, замість того щоб визначати їх вручну в тілі тесту. Це робить репорти набагато зрозумілішими.
У статті також розглядається, як управляти логікою комбінації параметрів, коли на вхід подається кілька значень одночасно.
🇺🇦 iOSDevUA
This media is not supported in your browser
VIEW IN TELEGRAM
💡Реалізація пошукових підказок у SwiftUI
🔎 Модифікатор
У поєднанні з відслідковуванням історії пошуку можна створити інтуїтивно зрозумілий інтерфейс, який допоможе користувачам швидко знаходити те, що вони шукають, а також легко повертатися до раніше переглянутих елементів.
📖 У цьому матеріалі розглядається, як впровадити таку функцію в додаток поетапно:
1️⃣ Реалізація фільтрації пошуку в реальному часі.
2️⃣ Впровадження підказок.
3️⃣ Відслідковування історії пошуку.
4️⃣ Створення зручної навігації.
🇺🇦 iOSDevUA
🔎 Модифікатор
searchSuggestions(_:) — це корисна функція, яка покращує роботу пошуку в додатках для iOS.У поєднанні з відслідковуванням історії пошуку можна створити інтуїтивно зрозумілий інтерфейс, який допоможе користувачам швидко знаходити те, що вони шукають, а також легко повертатися до раніше переглянутих елементів.
📖 У цьому матеріалі розглядається, як впровадити таку функцію в додаток поетапно:
1️⃣ Реалізація фільтрації пошуку в реальному часі.
2️⃣ Впровадження підказок.
3️⃣ Відслідковування історії пошуку.
4️⃣ Створення зручної навігації.
🇺🇦 iOSDevUA
💡Як Sketch адаптував іконку для темної теми
Ідея з tinted icons загалом була хорошою, але більшість адаптованих іконок виглядають досить непривабливо. На фоні цього приклад Sketch виглядає чудово — вони не просто змінили колір іконки, а повністю переглянули її концепцію.
🇺🇦 iOSDevUA
Ідея з tinted icons загалом була хорошою, але більшість адаптованих іконок виглядають досить непривабливо. На фоні цього приклад Sketch виглядає чудово — вони не просто змінили колір іконки, а повністю переглянули її концепцію.
🇺🇦 iOSDevUA
Sketch
Oh no, I need to design a tinted iOS 18 app icon — how to do it right · Sketch Blog
Tinted app icons in iOS 18 were met concerns over visual hierarchy and brand identity. Here are a few tricks we used to make ours work and feel at home.
This media is not supported in your browser
VIEW IN TELEGRAM
💡Приклад інтеграції Natural Language: аналіз тексту та генерація градієнта на основі результату
ℹ️ Natural Language — це фреймворк, що надає набір інструментів для аналізу та обробки тексту.
Його можна використовувати, наприклад, для визначення мови, пошуку схожості між фрагментами тексту та ін.
📖 У своїй статті розглядається особливості використання цього фреймворку, наводить приклади і показує можливості застосування разом з MeshGradient.
🛠 Код прикладу доступний на GitHub.
🇺🇦 iOSDevUA
ℹ️ Natural Language — це фреймворк, що надає набір інструментів для аналізу та обробки тексту.
Його можна використовувати, наприклад, для визначення мови, пошуку схожості між фрагментами тексту та ін.
📖 У своїй статті розглядається особливості використання цього фреймворку, наводить приклади і показує можливості застосування разом з MeshGradient.
🛠 Код прикладу доступний на GitHub.
🇺🇦 iOSDevUA
❤4
💡Writing Tools в Apple Intelligence
Незабаром Apple запустить свій AI для всіх користувачів. Однією з нових можливостей стане впровадження інструментів для роботи з текстом у всіх полях введення. Зараз саме час перевірити, як ваше додаток взаємодіє з цими інструментами та чи не потрібно деякі з них вимкнути.
🇺🇦 iOSDevUA
Незабаром Apple запустить свій AI для всіх користувачів. Однією з нових можливостей стане впровадження інструментів для роботи з текстом у всіх полях введення. Зараз саме час перевірити, як ваше додаток взаємодіє з цими інструментами та чи не потрібно деякі з них вимкнути.
🇺🇦 iOSDevUA
Create with Swift
Exploring Apple Intelligence: Writing Tools
Understand Writing Tools, powered by Apple Intelligence.
❤1
This media is not supported in your browser
VIEW IN TELEGRAM
🎄Новорічна анімація на SwiftUI+AppKit
Розробник знайшов цікаве рішення, щоб додати трохи святкової атмосфери в останній місяць цього року.
🤩 Виявляється, такий ефект можна створити для Mac, і це доводить Simon B. Støvring.
Цікаво, чи зможе хтось з читачів нашого каналу відтворити цей ефект?
🇺🇦 iOSDevUA
Розробник знайшов цікаве рішення, щоб додати трохи святкової атмосфери в останній місяць цього року.
🤩 Виявляється, такий ефект можна створити для Mac, і це доводить Simon B. Støvring.
Цікаво, чи зможе хтось з читачів нашого каналу відтворити цей ефект?
🇺🇦 iOSDevUA
👍4
💡Редактор Godot на iPad
Miguel de Icaza, один з основних розробників Xamarin, останній рік працював над новим проєктом — портом редактора Godot для iPad. І ось, з’явилося перше прев’ю. Якщо у вас є планшет і ви давно хотіли спробувати себе в геймдеві — це чудова можливість!
🇺🇦 iOSDevUA
Miguel de Icaza, один з основних розробників Xamarin, останній рік працював над новим проєктом — портом редактора Godot для iPad. І ось, з’явилося перше прев’ю. Якщо у вас є планшет і ви давно хотіли спробувати себе в геймдеві — це чудова можливість!
🇺🇦 iOSDevUA
Xogot Blog
Xogot: Godot on iPad Preview
We are now ready for folks to take Xogot for a spin and help identify where we fall short of iPad user expectations
💡Корисні поради для Advent of Code на Swift
Щоразу в грудні Ерік Вастл публікує Advent of Code — захоплюючий набір завдань для написання алгоритмів.
Щодня, з 1 по 25 грудня, з’являється нове завдання.
Завдання публікуються поступово, починаючи з найпростіших і поступово ускладнюються.
🔗 Ось простий інструктаж, як приєднатися до Swift-лідерборду.
А на скріншоті кілька порад, як спростити розв’язок завдань за допомогою Swift Algorithms.
🇺🇦 iOSDevUA
Щоразу в грудні Ерік Вастл публікує Advent of Code — захоплюючий набір завдань для написання алгоритмів.
Щодня, з 1 по 25 грудня, з’являється нове завдання.
Завдання публікуються поступово, починаючи з найпростіших і поступово ускладнюються.
🔗 Ось простий інструктаж, як приєднатися до Swift-лідерборду.
А на скріншоті кілька порад, як спростити розв’язок завдань за допомогою Swift Algorithms.
🇺🇦 iOSDevUA
👍2
💡Apple хоче спростити безпеку від data-race
Здається, команда Swift почула скарги від спільноти на те, що нові механізми безпеки від data race в Swift 6 вийшли занадто складними. Нещодавно вони опублікували бачення того, як можна покращити ситуацію.
🇺🇦 iOSDevUA
Здається, команда Swift почула скарги від спільноти на те, що нові механізми безпеки від data race в Swift 6 вийшли занадто складними. Нещодавно вони опублікували бачення того, як можна покращити ситуацію.
🇺🇦 iOSDevUA
GitHub
swift-evolution/visions/approachable-concurrency.md at approachable-concurrency-vision · hborla/swift-evolution
This maintains proposals for changes and user-visible enhancements to the Swift Programming Language. - hborla/swift-evolution
💡Розтягування аудіофайлу до потрібної довжини в Swift
Ця функція може бути корисною для вирішення проблем з синхронізацією (наприклад, при перекладі оригінального файлу та генерації субтитрів).
📖 Том Локхорст і Матейс Кадейк пояснюють, чому комбінації AVMutableComposition та AVAudioUnitTimePitch недостатньо для досягнення потрібного результату. Вони описують метод, що передбачає дублювання конкретних фрагментів аудіо в обчислених точках.
🛠 Код прикладу доступний на GitHub.
🇺🇦 iOSDevUA
Ця функція може бути корисною для вирішення проблем з синхронізацією (наприклад, при перекладі оригінального файлу та генерації субтитрів).
📖 Том Локхорст і Матейс Кадейк пояснюють, чому комбінації AVMutableComposition та AVAudioUnitTimePitch недостатньо для досягнення потрібного результату. Вони описують метод, що передбачає дублювання конкретних фрагментів аудіо в обчислених точках.
🛠 Код прикладу доступний на GitHub.
🇺🇦 iOSDevUA
Nonstrict
Stretching audio by small amounts using Swift | Nonstrict
Stretching an audio file to a certain length can be useful to fix lipsync issues. Our previous approach didn't work for stretching small durations over a large amount of time. We now have a new solution.
💡Дайджест Swift Evolution: травень-листопад
Оскільки ми заговорили про оновлення в Swift, ось дайджест з коротким розбором всіх останніх важливих прийнятих пропозицій:
👉SE-0436: Objective-C implementations in Swift
👉SE-0438: Metatype Keypaths
👉SE-0439: Allow trailing comma in comma-separated lists
👉SE-0443: Precise Control Flags over Compiler Warnings
👉SE-0444: Member import visibility
👉SE-0445: Improving String.Index's printed descriptions
🇺🇦 iOSDevUA
Оскільки ми заговорили про оновлення в Swift, ось дайджест з коротким розбором всіх останніх важливих прийнятих пропозицій:
👉SE-0436: Objective-C implementations in Swift
👉SE-0438: Metatype Keypaths
👉SE-0439: Allow trailing comma in comma-separated lists
👉SE-0443: Precise Control Flags over Compiler Warnings
👉SE-0444: Member import visibility
👉SE-0445: Improving String.Index's printed descriptions
🇺🇦 iOSDevUA
Substack
Swift Evolution Monthly: May-November 2024
Discover the latest Swift updates, from Objective-C compatibility improvements to metatype keypaths, trailing commas, and new compiler controls—plus a must-have app for tracking proposals!
💡Створення клону додатку Messages за допомогою SwiftUI
📖 У статті автор ділиться своїм підходом до верстки списку чатів, вибору вкладень та розглядає особливості реалізації «баблів» повідомлень за допомогою Path.
🇺🇦 iOSDevUA
📖 У статті автор ділиться своїм підходом до верстки списку чатів, вибору вкладень та розглядає особливості реалізації «баблів» повідомлень за допомогою Path.
🇺🇦 iOSDevUA