BW Swift @bwswift Channel on Telegram

BW Swift

@bwswift


Канал створений для навчання програмування на swift та розробці програм під iOS. Мета проекту - допомогти студентам пройти шлях від розробника-початківця до оплачуваного фахівця. Тут я публікую актуальні та цікаві статті щодо iOS розробки. Адмін: @bws2007

BW Swift (Ukrainian)

Канал "BW Swift" - це ідеальне місце для тих, хто бажає вивчити програмування на мові Swift та розробку додатків під iOS. Мета даного проекту полягає у допомозі студентам у пройденні шляху від новачка у програмуванні до висококваліфікованого фахівця, готового працювати за гідною зарплатою. На каналі публікуються актуальні та цікаві статті, спрямовані на розвиток у сфері iOS розробки. Адміністратор каналу - @bws2007, готовий надавати консультації та сприяти вашому росту у програмуванні. Приєднуйтесь до каналу "BW Swift" прямо зараз та розпочніть свій шлях до високоплачуваної кар'єри розробника iOS!

BW Swift

26 Jan, 16:01


🟢Починаємо стрім!

https://www.youtube.com/watch?v=82GQw_uCrTk

BW Swift

26 Jan, 08:03


🟢 Співбесіди та пошук роботи в 2025 | Великий стрім - 18:00 по Києву на YouTube @bwswift

BWSwift 📱 YouTube 📱 Patreon

BW Swift

24 Jan, 11:33


💳 Apple запускає Advanced Commerce API

Apple представила Advanced Commerce API, новий інструмент для роботи з покупками в App Store. Ця функція дає розробникам більше контролю над підписками, промоакціями та управлінням пропозиціями прямо через API.

🔑 Що нового?
1. Гнучкість у налаштуванні: Можна створювати, змінювати або видаляти спеціальні пропозиції для підписок.
2. Автоматизація акцій: API дозволяє керувати акціями та промокодами без необхідності заходити в App Store Connect.
3. Покращення аналітики: Можливість перевіряти статус підписок та відстежувати, як працюють акції, щоб адаптувати стратегію монетизації.

🤔 Чому це важливо?

Раніше для налаштування акцій і підписок потрібно було вручну працювати через App Store Connect. Тепер це можна робити автоматизовано, що заощаджує час і відкриває більше можливостей для масштабування бізнесу.

👉 Advanced Commerce API вже доступний для всіх розробників. Готові спробувати? Як думаєте, наскільки це спростить життя?

https://developer.apple.com/in-app-purchase/advanced-commerce-api/

BWSwift 📱 YouTube 📱 Patreon

BW Swift

22 Jan, 11:46


👩‍💻 Вийшли нові реліз кандидати + TestFlight

BWSwift 📱 YouTube 📱 Patreon

BW Swift

21 Jan, 14:46


🤯DeepSeek R1 Distill Llama 8B "думає" ЛОКАЛЬНО на iPhone 15 Pro!

Thilak Rao зміг запустити LLM на девайсі і вже пише застосунок з робочою моделлю.

Вражає, що це працює прям на девайсі і с достатньою швидкістю!

На скріншоті можете побачити, що ця модель краща за Claude 3.5 та 4о і лише трошки уступає o1-mini

BWSwift 📱 YouTube 📱 Patreon

BW Swift

21 Jan, 13:35


👩‍💻 WhatsApp фрізиться іноді при наборі тексту через дедлок повʼязаний з CoreData.

Це стається в новій нативній версії, тому багато хто переходить назад на веб-бейзд версію.

А ви як часто міняєте потоки при наборі тексту в текстфілді?

BWSwift 📱 YouTube 📱 Patreon

BW Swift

21 Jan, 12:21


👩‍💻 А ви використовуєте ключове слово «nonmutating» для роботи з computed property?

Користуйтесь.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

20 Jan, 11:35


🚨Застосунки без статусу трейдера будуть видалені з App Store в ЄС

Починаючи з 17 лютого 2025 року: відповідно до Закону Європейського Союзу про цифрові послуги, додатки без статусу трейдера будуть видалені з App Store в Європейському Союзі до тих пір, поки статус трейдера не буде надано та перевірено, якщо це необхідно.

Нагадуємо, що власники облікових записів або адміністратори в програмі розробників Apple повинні ввести статус трейдера в App Store Connect для додатків в App Store в Європейському Союзі, щоб дотримуватися Закону про цифрові послуги.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

17 Jan, 07:04


Колись тут у чаті обговорювали витоки пам'яті через .sheet з iOS 17.0. У 17.2+ це пофіксили, але завжди має бути Король-Ліч повинні вилазити якісь баги у SwiftUI.

Що ж, цю естафету взяли на себе .searchable + .refreshable з iOS 17.3+. Якщо їх використовувати разом, то при використанні будь-якого поля View в .refreshable без capture list, тобто при захопленні навколишнього контексту, буде витік пам'яті.
На відео з прикладом ви можете побачити як один і той же код працює до iOS 17.2, а як після цього аж до поточної версії (18.2).

MRE якщо захочете погратися.

То ж, якщо використовуєте .searchable та .refreshable із ScrollView, враховуйте це і використовуйте capture list як один з варіантів рішення.

#дрібниці

BW Swift

10 Jan, 12:41


MacPaw анонсували новий продукт Eney - AI помічника на MacOS

На сайті можете зареєструватися в ваітліст.

Продукт буде доступний до кінця року.

Функції які відомі на даний момент:
- Надсилання електронних листів
- Перетворення формату файлу
- Видалення програм
- Написання нотаток
- Очищення вашого Mac для вас
- Швидке обрізання відео
- Завантаження відео для вас
- Допомагаючи вам відсортувати непрочитані електронні листи
- Витяг аудіо з відео
- І багато іншого!

На ютуб є навіть трейлер продукту.

Модель поки буде в клауді, але є план зробити на девайсі.

Два місяці тому вони звільнили 20% компанії і було сюрпризом отримати анонс нового продукту.

💡Цікаво, що чотири місяці тому Reedle зробили Tools Tab який дозволяє зробити з документом більше 34-х різних дій (так само конвертнути щось в пдф, чи навіть дістати текст з відео і аудіо файла). Але вирішили не оформлювати це у виді модного AI помічника, а пішли стандартним шляхом з набором кнопок.

Може їм треба запартнеритися, як гадаєте?
Якщо так станеться, приймаю вдячність (за ідею і роль свахи) у вигляді пожиттєвої підписки на продукт 😆

В будь-якому випадку бажаю успіху українським продуктам!

BWSwift 📱 YouTube 📱 Patreon

BW Swift

10 Jan, 07:02


Я не люблю анімації, особливо як користувач. Але деякі анімації все ж таки допомагають сприйняттю, а не просто сповільнюють можливість зробити необхідне.

З iOS 18+ додали багато нових проблем та багів. У тому числі й візуальних.
На прикладі ви можете побачити порівняння як виглядає drag-n-drop анімація на iOS 18.0 у порівнянні з попередньою версією.
MRE якщо захочете погратись.

У нових версіях це пофіксили, але на iOS 18.0 це так і залишиться.

#дрібниці

BW Swift

08 Jan, 13:56


🍏 Apple Intelligence створює фейкові новини?

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

🚨 Приклади помилок:

BBC News: Apple Intelligence стверджувала, що Луїджі Манньйоне застрелився, хоча цього не було.
PDC World Championship: У сповіщенні йшлося, що Люк Літтлер виграв турнір ще до фіналу.
Рафаель Надаль: Apple Intelligence помилково повідомила, що Надаль зробив камінг-аут, хоча це неправда.

🛠️ Apple реагує

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

🏷️ Проблема з «бета» статусом

Apple позиціонує Apple Intelligence як «бета» функцію, але активно рекламує її як ключову особливість нових пристроїв. Користувачі отримують цю функцію в офіційних релізах, що створює плутанину – чи повинна вона працювати стабільно, чи ні?

🤔 Чи є рішення?

Розробники не можуть відключити підсумки для своїх додатків. Це залишається виключно на рівні користувача, який повинен самостійно відключити цю функцію в налаштуваннях.
– Деякі експерти пропонують, щоб Apple додавала власний логотип на такі сповіщення, щоб було зрозуміло, хто відповідальний за їх зміст.

📱 Висновок:

Apple швидко впроваджує нові AI-функції, намагаючись конкурувати з Google та Microsoft. Але важливо пам’ятати, що функція підсумків новин є опціональною – її можна відключити.

BW Swift

08 Jan, 12:46


🚀 Swift отримав параметризовані тести

Відтепер писати тести в Swift стало ще простіше та швидше! У Xcode 16 з’явилась довгоочікувана підтримка параметризованих тестів.

🧪 Що це таке?

Параметризовані тести дозволяють запускати один і той самий тест з різними наборами даних. Раніше доводилось дублювати код або створювати окремі методи для кожного кейсу. Тепер усе можна зробити набагато елегантніше.

🔍 Як це виглядає дивіться на скріншоті.

Раніше для такого треба було або багато XCTAssertEqual, або трюки з XCTestCase. Тепер – все в одному тесті.

Що це означає на практиці?
– Якщо один з тестів падає, ти одразу бачиш який саме набір даних не пройшов.
– У Test Navigator можна перезапустити лише той тест, який провалився – просто натиснувши на червону іконку помилки.

🎯 Чому це круто?
Менше зайвого коду – більше кейсів в одному місці.
Простіше підтримка – легше додавати нові варіанти для тестів.
Швидка адаптація під зміну логіки або нові вимоги.

Чому це важливо?

Xcode довгий час поступався за зручністю тестування фреймворкам типу JUnit. Тепер Apple наздогнала та додала інструменти сучасного рівня прямо в екосистему Swift.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

08 Jan, 11:01


👩‍💻 Нові бети, прошу до уваги.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

06 Jan, 11:26


👩‍💻Siri слухає більше, ніж ти думаєш – Apple закрила справу про підслуховування

Apple погодилась зам’яти судовий позов щодо того, що Siri могла випадково підслуховувати розмови користувачів.

🔍 Що сталося?

– Siri іноді вмикалася сама – навіть якщо ти не казав «Hey Siri».
– Вона могла записати все, що відбувалося навколо: від розмов до випадкових моментів.
– Частина цих записів надсилалася на сервери Apple для аналізу, щоб покращити роботу асистента.
– У 2019 році стало відомо, що контрактори Apple слухали деякі записи, і так, інколи це були особисті розмови користувачів.

💡 Цікаві факти:
1. 10% активацій Siri були випадковими. Уяви, кожен 10-й раз Siri могла слухати, навіть якщо ти цього не планував.
2. У записах знаходили розмови з лікарями, бізнес-зустрічі та навіть інтимні моменти.
3. Після скандалу Apple дозволила користувачам відмовитися від збереження голосових записів і запровадила більш прозорі правила обробки даних.
4. Apple стверджувала, що не використовує ці записи для таргетованої реклами, на відміну від Google чи Amazon. Але позивачі заявляли, що Apple могла порушити власну політику конфіденційності та використовувати ці дані для персоналізації.

🛡️ Чим це закінчилося?

Apple вирішила закрити справу грошовою компенсацією, але не визнала своєї провини.

🔹 Скільки Apple заплатить? Суму не розголошують, але кажуть, що це «суттєві виплати». Десь 95 млн$. Вони виплатять компенсацію всім, хто доєднається до позову.
🔹 Siri, за словами Apple, стала безпечнішою та приватнішою, але чи це справді так – питання відкрите.

🤔 Що це означає для нас?

Apple позиціонує себе як компанію, яка захищає приватність, але навіть вона не ідеальна.

А у вас була персоналізована реклама на iPhone з включеною Siri?

BWSwift 📱 YouTube 📱 Patreon

BW Swift

04 Jan, 11:05


👩‍💻 В наступній версії Swift можна бути називати функції і змінні з пробілами, спец символами та цифрами за допомогою Raw Identifiers.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

03 Jan, 07:05


Чи знаєте ви життєвий цикл контролера? А що буде викликано, якщо встановити один як root контролер і негайно push другий? А на iOS 18? З анімацією?

На наведених зображеннях ви можете побачити результати print деяких методів життєвого циклу.
MRE з прикладом
На зображенні 1 показано, як це працює на iOS 17 і старіших версіях. Викликаються методи життєвого циклу як першого, так і другого ViewController.
На малюнку 2 показано, як це працює з iOS 18.0+. Викликаються лише методи життєвого циклу другого ViewController.

Можливо, це оптимізація в UIKit з iOS 18, може новий баг, а може оптимізація старого багу. Адже у цьому випадку одразу показується другий ViewController як і раніше, а методи викликаються як було раніше з animated: false, або setViewControllers.

#дрібниці

BW Swift

31 Dec, 18:52


👩‍💻 Всіх вітаю з Новим Роком!

Тримайте план навчання на 2025 рік

https://buttered-stone-93c.notion.site/iOS-Study-Plan-2025-1682904f59a780cd8301d136195f513d

BWSwift 📱 YouTube 📱 Patreon

BW Swift

28 Dec, 11:30


🍏 Apple втручається в антимонопольний суд проти Google – що на кону?

Apple вирішила офіційно взяти участь у майбутньому антимонопольному процесі США проти Google. Причина? Google не збирається захищати угоду, яка щороку приносить Apple мільярди доларів.

👉 Про що мова?
Google платить Apple шалені гроші, щоб залишатися пошуком за замовчуванням в Safari. У 2022 році ця угода принесла Apple приблизно $20 млрд.

👉 Що сталося?
Раніше суд вже визнав цю угоду незаконною, і тепер Apple хоче відстояти її самостійно. Едді Кью, віцепрезидент Apple, прямо заявив:

“Лише Apple може пояснити, які партнерства найкраще служать користувачам.”

👉 Що буде, якщо угоду скасують?
Apple каже, що це може вплинути на якість продуктів і можливості Safari. І навіть якщо Apple визнає Google найкращим пошуком, то просто не отримає за це гроші.

🎯 Висновок:

Apple боїться втратити десятки мільярдів, але також хоче контролювати ситуацію і самостійно вирішувати, що краще для користувачів.

Як думаєте, це кінець «золотого потоку» від Google чи Apple знайде спосіб обійти рішення суду?

BWSwift 📱 YouTube 📱 Patreon

BW Swift

27 Dec, 12:10


👩‍💻Apple вирішила залишитися на російському ринку, виконавши вимоги Роскомнагляду, що призвело до видалення незалежних медіа та VPN-сервісів з App Store.

Компанія обґрунтовує це дотриманням демократичних принципів, але такі дії викликають питання про пріоритети: бізнес-інтереси чи свобода слова?

@DOU

BWSwift 📱 YouTube 📱 Patreon

BW Swift

27 Dec, 09:45


💻 Шо таке MoE і чому на це витратили 20К$ в Mac Mini?

Тут один розробник вирішив погратись з великими мовними моделями (типу ChatGPT) і запустив модель DeepSeek-V3 на кластері з 8 Mac Mini M4 Pro (64GB RAM).

🔹 MoE (Mixture of Experts) — це модель, яка складається з купи маленьких «експертів», і працюють одночасно не всі, а лише частина з них. Тобто, це як команда експертів, де ти питаєш лише кількох, а не всіх. Це дозволяє економити ресурси.

🔹 Навіщо 8 Mac Mini?
Apple Silicon, а саме M4 Pro, має уніфіковану пам’ять (RAM і відеопам’ять об’єднані). Виявляється, це дуже зручно для таких моделей, бо вони жруть багато VRAM.

Вийшло так: 8 Mac Mini з 64GB пам’яті кожен = трохи менше 512GB VRAM за 20K $. В порівнянні з NVIDIA GPU це дуже непогано по співвідношенню ціна/обсяг пам’яті.

🔹 Як це працює?
Це як зібрати 8 консолей в одну систему. Результат поки що — 5 токенів в секунду (не дуже швидко). Але потенціал — 10+ токенів/сек.

Що це значить для нас?
Apple Silicon стає реальним варіантом для запуску великих моделей прямо вдома чи в офісі. Хочеш свій GPT? Купуєш пару Mac Mini, ставиш кластер і вперед.

Шо думаєте про таку ідею? Чи є сенс розглядати Mac Mini як AI сервери?

BWSwift 📱 YouTube 📱 Patreon

BW Swift

27 Dec, 08:02


З iOS 18, при збірці в Xcode 16.0+, натискання не тільки частково перестали працювати як раніше в деяких випадках, як приклад з gestures, але і навпаки, деякі почали працювати коли не треба.

На відео з прикладом ви можете побачити, що при скролі кнопок на iOS 18.0+ натискання не відміняється: кнопка підсвічена, а після завершення скролу, відпрацьовує action. На iOS 17 працює як треба: коли починається скрол, підсвітка кнопки відміняється і action не відпрацьовує.
Ну і як у попередніх випадках, ця проблема проявляється при збірці в Xcode 16.0+. Якщо цей же код зібрати в Xcode 15, це працюватиме нормально і на iOS 18.0+. Як і у попередніх версіях.

MRE якщо захочете погратись.

#дрібниці

BW Swift

23 Dec, 12:45


👩‍💻Приніс вам трохи чуток від Bloomberg інсайдерів.

Apple працює над дверним дзвінком Face ID.

Пристрій, ймовірно, вийде в 2026 році і може інтегруватися з іншими аксесуарами HomeKit, такими як розумні замки.

Також Apple нарощує роботу над перетворенням AirPods на пристрій для здоров'я. В даний час компанія має команди, які експериментують з різними вдосконаленнями, включаючи датчики температури, моніторинг серцевого ритму та технологію, яка відстежує безліч фізіологічних характеристик.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

22 Dec, 12:55


🔥 OpenAI викотила новий AI – модель o3. Це суперрозумний бот, який обганяє головного науковця OpenAI у програмуванні. І так, це звучить так само дико, як і є насправді.

💻 Що це значить для нас, розробників?
Ця модель може самостійно фіксити баги та писати код. І не на рівні “Hello World”, а вирішувати задачі, над якими нормальні люди сидять годинами.
• У тестах (SWE-Bench Verified) o3 показала результат на 23% кращий за попередню версію. Це як на змаганнях обігнати всіх на кілька кіл.

📐 Математика? Легко.
o3 майже ідеально впоралася з AIME 2024 (це серйозна математична олімпіада). З усіх задач вона провалила тільки одну.

🔬 Наукові задачі? Тут теж в топі.
На тесті GPQA Diamond (це коли AI відповідає на складні наукові питання), o3 набрала 87,7%. Для порівняння – це як скласти сертифікацію на експерта в своїй сфері майже на відмінно.

🤖 Міркування як у людини
OpenAI навчила o3 думати поетапно – це називається deliberative alignment. По факту – AI розбиває задачі на дрібні частини і збирає рішення крок за кроком. У підсумку менше шансів, що він нафантазує щось неадекватне.

Також десь бачив інфу, що ця модель перша, яка перевалила за 80% в якомусь AGI тесті, що де-факто значить, що AGI досягнуто, але поки у неї нема тіла, за це рано говорити.

🗣 Єдине що лякає, що її тренують на людських даних і хвалять саме за «більш людську» поведінку. Ви мабуть читали історії, що вона тікала на інший сервер коли дізналась, що її відключать і коли її питали за це то робила дурня «що я не я і хата не моя», класична людська поведінка. Але людство всю історії воювало один з одним і навіть розумніші з нас створювали зброю масового знищення. І те що вона буде найрозумніша не значить, що вона будить права, почитайте за синдром нобелівського лауреата, коли видатні вчені починають популяризувати конспірологію і іншу діч, так би мовити «галюцінувати». Куди нас це приведе дізнаймося в наступній серії.

🚀 Мої думки
Хотілося б що це був помічник, який буде прискорювати процес, генерувати ідеї та прибирати рутину.
AI – це інструмент, а не конкурент і не інстанція яка приймає рішення.

П.С. А ще Сем всім «плюс» підписникам дарує необмежену Sora на час свят.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

20 Dec, 13:31


👩‍💻 Невеличкий лікбез по Copyable, судячи з попереднього посту сюди ніхто не заглядував

У Swift ми звикли до простих у використанні copyable типів: більшість структур (struct) є такими. Коли ви присвоюєте одну змінну іншій, створюється повна копія даних. Це зручно й безпечно: зміни в одному місці коду не впливають на інше, оскільки кожна змінна зберігає власний стан.

Однак, постійне копіювання може бути дорогим, особливо якщо дані дуже великі. Тут на сцену виходять move-only (noncopyable) типи, які не можна вільно копіювати. Замість копіювання вони «переміщуються» (move). Такі типи дозволяють ефективніше використовувати пам’ять, уникаючи зайвих дублювань. Однак, щоб контролювати цей процес, Swift вводить механізм на кшталт “discard self”. Він повідомляє компілятору, що після виклику певного методу екземпляр більше не можна використовувати. Це гарантує жорсткий контроль за життєвим циклом об’єктів та унеможливлює неочікувані операції з ними.

«А чому ж просто не використати класи?» Класи — це reference types: ви передаєте не копію, а посилання на той самий об’єкт. Зміни в одному місці миттєво впливають на всі інші частини коду, які мають це посилання. У деяких випадках це зручно, але може призвести до неочікуваних побічних ефектів і складнощів у багатопоточному середовищі. До того ж Automatic Reference Counting (ARC), який керує життєвим циклом класів, може створювати додаткове навантаження на продуктивність.

Тому Swift еволюціонує: тепер ви можете вибирати між:
Copyable типами (struct та інші value types): простота та передбачуваність, але можливо «дороге» копіювання;
Move-only типами: строгий контроль за життєвим циклом та відсутність зайвих копій;
Класами (reference types): гнучкість, але ризик побічних ефектів і складніше керування пам’яттю.

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

BWSwift 📱 YouTube 📱 Patreon

BW Swift

20 Dec, 07:01


Іменування — одне з найскладнішого. Гарне іменування може змінюватися залежно від контексту. Ми всі звикли чути, що іменування має бути коротким, лаконічним тощо, але не у випадку SDK internals, особливо сгенерованим. Такий код має бути складнішими, з додатковою інформацією та навіть сміттям

Приклад з Observable. Якщо створити клас "Member", ви отримаєте купу помилок, як на зображенні 1. Оскільки "Member" використовується для назви типу в згенерованому коді.
"_$observationRegistrar" є гарним іменуванням тут, тому що малоймовірно, що будь-який користувач SDK називатиме свої змінні таким чином, але "Member" є поганим іменуванням.
Незабаром вони змінять реалізацію макросу.
Але наразі, якщо вам потрібна така назва для класу, можна легко вирішити проблему, додавши свою реалізацію функцій. На зображенні 2 ви можете побачити приклад її вирішення

MRE

І найголовніше, новий код генерується оновленим макросом, тому з новою версією апки зміни будуть поширені для будь-якої версії ОС, на відміну від SwiftUI

#дрібниці

BW Swift

19 Dec, 13:20


👩‍💻 Тут люди жаліються, що в Swift тепер дуже багато вийнятків та спеціальних правил

Але давайте почнем з простого, хто знав, що після discard self не викликається deinit?

❤️ Знав
👀 Не знав
🗿 Що це взагалі таке?

BWSwift 📱 YouTube 📱 Patreon

BW Swift

18 Dec, 14:50


🔥Тім Кук персонально анансував третій та четвертий сезон Silo!

🗣Нагадаю, що другий сезон тільки вийшов.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

05 Dec, 11:25


👩‍💻Еволюція дизайну Apple Watch!

BWSwift 📱 YouTube 📱 Patreon

BW Swift

04 Dec, 12:01


🔍В Starlink знайшли вразливість при використані яка сповільнює інтернет.

В Starlink є фіча для роботи зимою “snow melting”, яка підігріває саму тарілку, щоб сніг танув і був гарний конекшен.

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

Проблема стала настільки популярна, що в коробку до Starlink виробник кладе стікери з котиками.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

04 Dec, 11:05


👩‍💻 Цікаві функції з комбінаторики на колекціях які є в Swift Algorithms пакеті

Подрібнення по парах та комбінації різних значень.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

29 Nov, 21:39


🤑А ось лист усіх знижок від Marius Landwehr

Black Friday 2024

BWSwift 📱 YouTube 📱 Patreon

BW Swift

29 Nov, 21:36


Все ж таки на Pointfree є знижка 30%

Тримайте кому треба.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

29 Nov, 09:04


Нещодавно була новина про те, що 25% коду Google написано «ШІ». Цікаво, скільки за допомогою «ШІ» написано в Apple? Можливо, навіть частина SwiftUI вже написана з ним? Інакше як можна пояснити регрес в iOS 18, що нові проблеми з'являються навіть в базових речах?

Візьмемо, наприклад, довгий жест натискання. На відео ви можете побачити, що блок updating не працює на iOS 18.0. А у попередніх версіях все працює нормально.
Однак, можливо, це якось пов'язано з додаванням можливості використовувати жести UIKit. Нове додали, а інше зламали 🤷‍♂️

MRE якщо захочете погратись

Тож нам доведеться знайти ще багато проблем в iOS 18. І у поточних версіях вони так і залишаться зламаними.

#дрібниці

BW Swift

28 Nov, 14:05


👩‍💻 А які колекції ви знаєте в Swift?

Ви знали, що в 2021 у нас зʼявилися:
- ordered set
- ordered dictionary
- deque

В розробці зараз:
- sorted set
- sorted dictionary

A що ви знаєте за TreeSet чи Heap колекції? Не чули?

Тоді ознайомтеся з усіма колекціями які вам надає офіційний Swift Collections пакет!

https://github.com/apple/swift-collections

Спитаю наступний раз на співбесіді 😈

BWSwift 📱 YouTube 📱 Patreon

BW Swift

28 Nov, 11:20


👩‍💻 На Kodeco Raywenderlich розпродаж курсів та книжок, на всі книжки 50% знижки.

Подивіться на Advanced iOS Architecture.

https://www.kodeco.com/46129936-black-friday-sale-huge-discounts-on-subscriptions-bootcamps-and-books

Накидайте в коментарях які ще знайшли цікаві знижки на чорну пʼятницю.

П.С. В objc io поки нічого, у refactoring guru досі ще осінній розпродаж, bignerdranch не викатувли знижок, o’relly теж знижок не пропонують.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

27 Nov, 12:05


👩‍💻Apple представляє 45 фіналістів додатків та ігор на App Store Awards 2024

iPhone фіналісти:
Kino, для перетворення повсякденних моментів на кінематографічні шедеври.
Runna,за пропозицію індивідуальних планів тренувань бігунам будь-якого рівня досвіду.
Tripsy, щоб тримати мандрівників організованими та вільними від стресу

Фіналістів по іншим напрямкам дивіться тут.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

25 Nov, 12:45


👩‍💻Власники Apple Vision Pro готуються до Різдва

BWSwift 📱 YouTube 📱 Patreon

BW Swift

25 Nov, 12:25


👩‍💻В спокійному стані ця установка споживає приблизно 300 ват, це як одна відео карта RTX 3090.

Новий Mac Mini виявився дуже енерго ефективним!

BWSwift 📱 YouTube 📱 Patreon

BW Swift

22 Nov, 13:25


👩‍💻Вийшли оновлення від Apple

- Transporter
- Appstore Connect
- Testflight

🗣 І так співпало що в цей час відвалився Xcode Cloud

BWSwift 📱 YouTube 📱 Patreon

BW Swift

22 Nov, 11:45


👩‍💻Apple прагне розробити більш розмовну версію свого цифрового помічника Siri, прагнаючи наздогнати ChatGPT OpenAI та інші голосові сервіси. Компанія планує представити оновлений LLM Siri наступного року і запустити його до весни 2026 року - Bloomberg

🗣Цікаво чому вони стартують з такою великою затримкою. В 2026 у OpenAI вже буде AGI, а тут тільки голосовий помічник зʼявиться.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

22 Nov, 08:41


Окрім нових проблем із NavigationStack, давайте згадаємо одну зі старих.

З iOS 16 представили не лише path-based navigationDestination для NavigationStack, а й булевий isPresented.
Як завжди, з ним є проблеми. У наведеному прикладі ви бачите, що якщо перейти на перший екран і повернутись назад за допомогою @Binding, усе працює. Але якщо перейти на перший, а потім на другий екран, то повернутися таким чином вже не вдасться.
При цьому на iOS 17 і вище це працює нормально.

MRE якщо захочете погратись

А повернення до Root екрану працює і на iOS 16.

#дрібниці

BW Swift

19 Nov, 11:31


👩‍💻 Підбірка інформації з оптимізації iOS застосунків

- зменшення розміру
- покращені білд тайм
- прискорені запуску
- рантайм оптимізації
- використання памʼяті
- креши

https://github.com/hoangatuan/iOS-Performance-Optimization

BWSwift 📱 YouTube 📱 Patreon

BW Swift

18 Nov, 12:25


🔢 Зацініть репозиторій зі SwiftUI анімаціями

https://github.com/amosgyamfi/open-swiftui-animations

BWSwift 📱 YouTube 📱 Patreon

BW Swift

12 Nov, 10:10


👩‍💻Вийшли нові бети.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

10 Nov, 12:50


👩‍💻MacMini має знімний SSD

Його легко буде змінити, якщо зламається, але ви не зможете його проапгрейдити. Поки що…

BWSwift 📱 YouTube 📱 Patreon

BW Swift

10 Nov, 11:10


👩‍💻Справжня причина, чому Mac Mini має кнопку живлення під низом.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

08 Nov, 12:35


👩‍💻 Mac Mini та Apple Vision Pro

BWSwift 📱 YouTube 📱 Patreon

BW Swift

08 Nov, 10:46


👩‍💻Два базових Mac Mini (16/256) коштують на долар дешевше ніж один Mac Mini (32/512)

1198$ vs 1199$

BWSwift 📱 YouTube 📱 Patreon

BW Swift

08 Nov, 07:01


Наступного року нові збірки можна буде надсилати в App Store Connect лише з Xcode 16.x.

Але якщо ви не поспішаєте оновлюватися з Xcode 15.x, або використовуєте його у своєму CI/CD, у вас можуть виникнути проблеми.
Одним із таких прикладів є неробочий модифікатор .interactiveDismissDisabled(). Якщо ви використовуєте його всередині NavigationStack, він не працюватиме, починаючи з iOS 18.1. Хоча в попередніх усе працювало добре.
MRE якщо захочете погратись

Але якщо ви скомпілюєте цей самий код із Xcode 16.x, усе працюватиме на iOS 18.1 та 18.2 beta як і раніше.

Тому, якщо ви використовуєте стару версію Xcode і якась проблема раптом з’являється на новій версії iOS, спробуйте зібрати за допомогою останньої версії Xcode, та перевірити чи вона відтворюється 🤦

#дрібниці

BW Swift

06 Nov, 10:10


👩‍💻 Поки всі соц мережі забиті інформацію по виборам в штатах, тримайте приклад застосунку для розумного будинку для Apple Vision Pro.

Просто подивіться як це швидко працює, та який контроль девайсів 🔥

На фоні слухів про дешевий варіант Apple Vision Pro, та те що Apple розглядає варіант з розумними окулярами. Можна приблизно уявити майбутнє в якому все навколо має доступ до мережі і контролюється очима!

BWSwift 📱 YouTube 📱 Patreon

BW Swift

06 Nov, 09:09


Переживаєте що Swift стає занадто складним? В мене є для вас новини 😅
В Swift пропонують завести систему залежних типів (value dependent types). Це дуже нішова фіча яку я особисто тільки бачив в експериментальній мові Idris.
Ідея в тому, що прямо в тип можна вшити певні значення (для Swift поки тільки integers), таким чином задавши типу властивості які гарантовані на етапі компіляції. Наприклад, можна сказати що колекція містить рівно 10 елементів, не більше і не менше: List<10, Element>. Нахіба воно треба свифту? Читайте мотивацію в пропоузалі. Але крім цього це відкриває двері для цікавих трюків з типами, я обов'язково ними поділюся в майбутньому.

https://github.com/swiftlang/swift-evolution/blob/main/proposals/0452-integer-generic-parameters.md

BW Swift

05 Nov, 11:10


"Сьогодні Apple повідомляє про новий рекорд доходів у вересневому кварталі в розмірі 94,9 мільярда доларів, що на 6 відсотків більше, ніж у минулому році", - сказав Тім Кук, генеральний директор Apple.

"Протягом кварталу ми були раді оголосити про наші найкращі продукти, з абсолютно новою лінійкою iPhone 16, Apple Watch Series 10, AirPods 4 та чудовими функціями для здоров'я слуху та виявлення апное сну. І цього тижня ми випустили наш перший набір функцій для Apple Intelligence, який встановлює новий стандарт конфіденційності в ШІ та підсилює нашу лінійку".

BWSwift 📱 YouTube 📱 Patreon

BW Swift

04 Nov, 11:41


Дослідження на тему Reference Counting стверджує що типові Swift програми витрачають в середньому 30% часу виконання суто на ARC. Той факт що ARC має оверхед не є секретом, і Obj-C діди це добре знають. Але цей порядок величин особисто для мене є шокуючим. Зауважу що дослідження за 2018 рік для Swift 3 і з того часу відбулися певні зміни, як то популярізація value типів за замовчуванням та введення borrowing моделі володіння в критичних секціях коду. Але фундаментально модель ARC залишилась незмінною, тож варто очікувати що дослідження все ще актуальне для коду з великою кількістю ARC-managed об'єктів.
Чи означає це що ваш iOS додаток теж до 30% часу витрачає на RC? Швидше за все, ні. Зауважте, що дослідження робилося для бібліотек в яких весь час виконання - це hot paths. В той час як типовий iOS додаток має різні типи задач: деякі інтенсивні з великою кількістю RC, інші - легкі та без RC взагалі.

https://iacoma.cs.uiuc.edu/iacoma-papers/pact18.pdf
https://developer.apple.com/videos/play/wwdc2016/416

BW Swift

03 Nov, 10:46


📱 Трошки новин про AI

У відкритий доступ потрапила повна модель o1 на деякий час і вона не може вирішити цей графічний пазл.

За замовченям, доступні лише урізані o1 моделі, які не вміють працювати з картинками. Але користавучам в інтернеті вишйло отримати доступ до повної версії.

Так, вона майже виграла міжнародну олімпіаду по програмуванню.
Так, ця модель зараз найпотужніша в світі.
Так, її відповідь краща ніж у "середньостатистичної" людини.

Але відповідь хибна - 27!

Правильна віповідь:
Якщо ви нарахували 24, то ви на правильному шляху, але все ж таки, їх тут 25, бо один трикутник не в трикутнику.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

03 Nov, 10:35


👩‍💻Cursor Sidebar для Xcode.

Працюйте з Cursor напряму з Xcode! Sidebar має всі ті самі функції що і Cursor. Може генерувати і вставляти код напряму в Xcode та індексувати увесь проект, та працювати з контекстом.
Все теж саме, але в Xcode!

https://alexsidebar.app/

Поки в беті безкоштовно.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

03 Nov, 09:05


💡Питання зі співбесіди

Категорія: advanced concurency.

Чи є в цьому коді проблеми? Якщо є то як їх виправити?
На що звернути увагу при розширені цього коду в майбутньому?

#співбесіда

Підказка: це повязано з actor reentrant поведінкою.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

02 Nov, 07:44


😅Відповідь команди Резерв+ з приводу інциденту.

Ситуація трохи комічна.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

02 Nov, 04:50


🔐 Користуєтесь Okta на проекті і думаєте що все тепер під захистом?

На жаль, ні.
Тільки-но погляньте яку «дірку» знайшли: якщо логін складається з 52 (та більше) символів - то можна було залогінитись з будь-яким паролем. Але на щастя, вже пофіксили.

Цікаво, які ще прогалини там сховані, та кому взагалі можна довіряти, якщо компанії таких масштабів допускають такі помилки?

Source: https://x.com/mattjay/status/1852486470650528010?s=46

BW Swift

01 Nov, 17:57


😅В нашому чаті «хрущ зі Львова» прислав цей скріншот.

Як гадаєте, що саме тестять?

BWSwift 📱 YouTube 📱 Patreon

BW Swift

01 Nov, 15:36


👩‍💻Apple купує популярний додаток для редагування фотографій Pixelmator - Bloomberg

Скоріш за все буде як з шазам, додадуть в iOS.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

01 Nov, 10:12


👩‍💻Тут Apple знову за своє взялись.

Я так зрозумів, що вони видалять Patreon апку, якщо ті не зроблять пурчейзи через AppStore.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

01 Nov, 07:02


Коротко згадавши про проблеми Swift 6, повернемося до SwiftUI.

З iOS 16 було представлено NavigationSplitView. І від версії до версії з ним виникають різні проблеми. До iOS 17, якщо ви згорнете апку, а потім розгорнете, ви побачите, що він знову відкривається, але це жодним чином не впливає на роботу.
Включаючи iOS 18.0, після тих же дій елементи зникають, як на відео з прикладом.
З iOS 18.1 все краще: іноді потрібно повторити двічі, аби елементи зникли.

MRE якщо захочете погратись.

Це відома проблема з NavigationSplitView і її буде вирішено в наступних релізах. Але в поточних він зламаний і ніколи не буде виправлений.

#дрібниці

BW Swift

31 Oct, 17:27


👩‍💻Порівняння розміру маків від Appletechway

Є тут бажаючи порахувати на скільки змінився обʼєм нового мініка порівняно зі старим?

BWSwift 📱 YouTube 📱 Patreon

BW Swift

31 Oct, 10:01


👩‍💻Зараз увесь світ сходить з розуму, що Mac Mini треба вмикати з низу.

Але вони не знають, що справжні користувачі рідко коли його вимикають 😅

Тому виглядає так, що це проблема журналістів і віндовс користувачів.

А ви як ставитесь до кнопки, яка знаходиться внизу?

BWSwift 📱 YouTube 📱 Patreon

BW Swift

30 Oct, 16:40


👩‍💻 Новий MacBook Pro від Apple має неймовірно потужне сімейство чіпів M4 і провіщає нову еру з Apple Intelligence

Завдяки вдосконаленій 12-мегапіксельній камері Center Stage, Thunderbolt 5 на моделях M4 Pro та M4 Max та абсолютно новій опції нанотекстурного дисплея MacBook Pro стає ще більш потужним і ще більш професійним!

💸Стартує з 1599$, М4, 16GB, 512 GB.

Максимальна комплектація: з новим дисплеєм, покращений M4 Max, 128GB RAM, та 8TB SSD обійдеться всього в 7049$.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

24 Oct, 11:25


👩‍💻 З 17-ого Жовтня для будь-яких релізів на території ЄС було впроваджено статус трейдера.

Вам треба буде вибрати чи трейлер ви чи ні.

Якщо застосунок це ваш ключовий дохід то ви трейдер, якщо ж у вас є інший основний дохід а це підробіток то ви не трейдер. Telegram здається вибрав статус не трейдера.

П.С. Новина трошки «запіздала», якщо вже робили реліз, поділіться в коментарях що проставляли і чому.

BW Swift

24 Oct, 09:13


👩‍💻iOS 18.2 beta 1 вже доступна для розробників з Genmoji, ChatGPT, Image Playground та Visual Intelligence (iPhone 16).

BWSwift 📱 YouTube 📱 Patreon

BW Swift

24 Oct, 08:30


💡Бачили новину?

Бойовий модуль Wolly дозволяє дистанційно керувати за допомогою Apple Vision Pro

🗣UI кульгає, але головне що працює!

BWSwift 📱 YouTube 📱 Patreon

BW Swift

23 Oct, 12:03


👩‍💻 Apple як завжди, хочете пофіксити креш? Використовуйте “asyncAfter”

Поділився Марсін Крижановскі.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

22 Oct, 11:35


👩‍💻 Apple запустила преордер для iPad Mini.

Найкраща версія iPad в світі отримала своє оновлення!

- usb-c
- підтримка Apple Pencil та Pencil Pro
- чіп A17 pro
- Apple Intelligence
- 8.3” Liquid Retina Display (500 nits, P3 кольори, True Tone, Anti-reflecting coating)

Стартує з 679$ за 128GB, та 1109$ за 512GB за Wi-fi версію, але 1309$ за Wi-fi+Cellular.

Додатково:
- Новий чохол - 75$
- Pencil Pro - 170$
- Безкоштовні 3 місяці на AppleTV, Apple Arcade та fitness+ при купівлі

BWSwift 📱 YouTube 📱 Patreon

BW Swift

22 Oct, 09:05


💡Приклад тестового завдання від abz.agency

Посилання на проект:
https://github.com/Kinzerskiy/test_abz

BWSwift 📱 YouTube 📱 Patreon

BW Swift

21 Oct, 22:35


Пост для тих хто користується fastlane.

Якщо у вас почали сипатись 503 помилки, то знайте що це не ви щось зламали, а Apple.
Фікс для цього вже є, треба лише оновитись до версії 2.225.0

Подробиці чому так можна знайти ось тут: https://x.com/joshdholtz/status/1848183409799258319?s=46

BW Swift

21 Oct, 11:50


💡Подивився 3,5 години майстер-класа по роботі з Cursor AI.

Це 3 години дебага, стековерфлоу, перечитування документації та постійні перемикання між ним та Xcode 😅 бо щось не працює, все як зазвичай.

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

Реально сподобалось, коли він дебаг прінти по всьому коду проставляє за три секунди, але це точно не «гейм-чейнджер».

🗣Дивитися відео не рекомендую. Якщо переживаєте, що ШІ забере у вас роботу, то заспокойтесь. Зросте абстракція та швидкість розробки, як при переході з асемблера на С, а потім на ООП, але програмісти нікуди не дінуться. В деяких випадках навіть буде більше роботи для програмістів, бо ті хто зараз пише поганий код, зможуть його генерувати в рази швидше…

BWSwift 📱 YouTube 📱 Patreon

BW Swift

21 Oct, 10:19


👩‍💻 Якщо вам боляче працювати зі строками в Swift, то це через підтримку емоджі та інших символів юнікода.

Як бачте на скріншоті лише Swift справився з задачею коректно!

BWSwift 📱 YouTube 📱 Patreon

BW Swift

20 Oct, 10:10


📱 Історії з LinkedIn

Різні HR, різні люди, але одна і та сама історія.

Компанія заснована білорусами, зареєстрована на Кіпрі, наймають лише російськомовних iOS-ників.

🗣 На ці питання можна було відповісти не виправдовуючись, але сором відчувається через екран.
П.С. HR-и з України, шукають українців.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

19 Oct, 10:30


💡Легкий спосіб підняти розмір застосунку на 50 МБ

Автор Josh Cohenzaden

BWSwift 📱 YouTube 📱 Patreon

BW Swift

18 Oct, 10:45


💡 Лайфхак - перед тим як купляти підписку в застосунку перевірте сайт розробника і ціни на сайті.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

18 Oct, 09:27


👩‍💻 Зацініть сайт

https://fuckingifcaseletsyntax.com

BWSwift 📱 YouTube 📱 Patreon

BW Swift

18 Oct, 07:03


Продовжуючи тему проблем документації, хочеться звернути вашу увагу на TabView: https://developer.apple.com/documentation/swiftui/tabview

У документації зазначено, що елемент доступний з iOS 13, і начебто все добре розписано. Але якщо спробувати приклад з цієї документації – отримуємо помилки, що доступно це тільки починаючи з iOS 18. Тому що для прикладів TabView використовують Tab і інше, доступне тільки з iOS 18.
Чому не можна було хоча б явно вказати це? Питання риторичне.

#дрібниці

BW Swift

17 Oct, 12:10


👩‍💻 Як часто ви користуєтесь таким синтаксисом в swift для розгортання Optional значень в циклі?

Став ❤️ якщо не знав, що можна і тип перевіряти

BWSwift 📱 YouTube 📱 Patreon

BW Swift

17 Oct, 11:40


👩‍💻 Stackoverflow 2024 developer survey

Багато цікавої інформації:
- 65к+ респондентів
- Українців аж 4.6%, 5-е місце в загальному рейтингу країн
- середні зарплати мобільщіків більші ніж у бекенд, фронт, фулстек
- Dart обігнав Swift по полярності на 3 пункти
- 62.3% розробників використовували JS в роботі

Там ще багато питань по AI, технологіям, скільки кому платять і т.д. Діліться своїми знахідками в коментарях.

Детальніше тут:
https://survey.stackoverflow.co/2024/ai/

BWSwift 📱 YouTube 📱 Patreon

BW Swift

17 Oct, 10:40


👩‍💻 Туторіал по Embedded Swift на мікро контролері ESP32-C6

Не думав що я колись це побачу, але в плей-листі майже 4 години унікального контенту!

BWSwift 📱 YouTube 📱 Patreon

BW Swift

16 Oct, 10:50


🌟iOS події в Україні в найближчий місяць

BWSwift 📱 YouTube 📱 Patreon

BW Swift

16 Oct, 03:45


BW Swift pinned «Відвʼязав цей канал від чату @bwswiftchat Мінуси: - зникли коментарі під постами вище. Якщо вам потрібні коментарі до старих постів, шукайте їх в чаті @bwswiftchat (в телеграмі нажаль нема переносу коментарів в новий чат) - раніше можно було сидіти лише…»

BW Swift

15 Oct, 12:27


👩‍💻 В кінці жовтня буде Apple Event, що очікуємо:

MacBook

• 14-дюймовий MacBook Pro: Ходять чутки, що він отримає блискучий новий чіп M4. Може навіть поставлятися в гладкому космічному чорному покритті з додатковим портом Thunderbolt.
• 16-дюймовий MacBook Pro: ймовірно, буде оновлений за допомогою чіпів M4 Pro та M4 Max.

Настільні комп'ютери

• iMac: барвиста 24-дюймова модель повинна бути оновлена до M4.
• Mac mini: Підготуйтеся до серйозної редизайну! Він може зменшитися приблизно до розміру коробки Apple TV з опціями M4 та M4 Pro.

Айпади

• iPad mini: давно назріле оновлення, можливо, отримання чіпа серії M.
• iPad початкового рівня: може побачити редизайн, хоча його можна відкласти на початок 2025 року.

Аксесуари

• Magic Mouse, Magic Trackpad та Magic Keyboard: очікуйте, що вони нарешті приєднаються до клубу USB-C.

BWSwift 📱 YouTube 📱 Patreon

BW Swift

15 Oct, 10:20


📱Netflix зробили це, а значить можеш і ти!

Новий реліз підтримує iOS 17+!

BWSwift 📱 YouTube 📱 Patreon