iOS Broadcast
Подборка новостей и статей для iOS разработчиков. Обсуждение @android_broadcast_talks Новости Kotlin и мультиплатформы @kotlin_broadcast Новости Android @android_broadcast Реклама и прочее @android_broadcast_bot
إظهار المزيد2 997
المشتركون
+224 ساعات
+57 أيام
+6830 أيام
- المشتركون
- التغطية البريدية
- ER - نسبة المشاركة
جاري تحميل البيانات...
معدل نمو المشترك
جاري تحميل البيانات...
00:06
Video unavailableShow in Telegram
📱 SwiftUI может быть немного... нетерпеливым
В отличии от императивных подходов к навигации, при работе со SwiftUI создание View может происходить не так как мы думаем, исходя из опыта использования UIKit. Это приводит к инициализации экранов до того, как они действительно понадобятся. Статья показывает на примере:
🟢Зачем появился NavigationLink(value:) в iOS 16
🟢Какие подводные камни таит использование NavigationLink(_:destination)
🟢Как избежать проблем, используя .onAppear и .task с NavigationLink(_:destination)
Надеюсь, вы до этого уже дошли сами, это прям обязательный тер. минимум для всех кто использует SwiftUI
CleanShot-2024-07-05-at-03.11.12.mp43.83 MB
1️⃣2️⃣3️⃣4️⃣5️⃣ SE-0431: isolated(any) Function Types
Swift 6 про работу с параллелизмом, в пропоузале добавляется новая возможность к функциональным значениям.
Суть проблемы:
Каждая декларация в Swift имеет некоторую четко определенную статическую изоляцию. Кложуры, однако, являются особенными. На их изоляцию влияет не только то, где они определены, но и то, что они захватывают. В данном предложении добавлена возможность проверить изолированность значения функции.
Кложур, помеченный
@isolated(any)
, может "экспоузить" захваченную изоляцию во время выполнения.
func traverse(operation: @isolated(any) (Node) -> ()) {
let isolation = operation.isolation
}
Добавление @isolated(any)
к замыканию означает, что оно должно вызываться с await
. Это верно, даже если оно не выходит из изоляции. Начиная со Swift 6, вывод кода типа:
Task { print("1") }
Task { print("2") }
Task { print("3") }
Будет "1", "2", "3"
swift-evolution/proposals/0433-mutex.md at main · swiftlang/swift-evolution
This maintains proposals for changes and user-visible enhancements to the Swift Programming Language. - swiftlang/swift-evolution
❤ 3
Photo unavailableShow in Telegram
Стало скучно в разработке? Пора освоить создание мультиплатформенных приложений на Flutter!
⏰ Старт обучения: 29 июля
❓Для кого: обновленное обучение для начинающих и опытных разработчиков
❗️ Пройдите тест, чтобы попасть на курс по специальной цене
Вас ждут:
👉 Челленджи и нестандартные практические решения
👉 Сильные проекты для портфолио и карьерный сапорт
Всего за 6 месяцев на онлайн-курсе «Flutter Mobile Developer» от OTUS вы освоите актуальный стек инструментов для кроссплатформенной мобильной разработки и создадите свой аналог популярного приложения.
#реклама ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2VfnxxFgpSc
🤔 4👌 2
Пройти тест
🔨 Xcode Explicitly Built Modules
Ранее, в обзоре нововведений Xcode 16, я уже рассказывал про экспериментальный режим компиляции Swift модулей, в статье приводятся реальные примеры использования и бенчмарки скорости компиляции и отладки. Первоначальные тесты показали, ускорение наблюдается не всегда, но экспериментальность такого метода подсказывает нам о возможных улучшениях в процессе получения фидбека от нас
🔥 3
Photo unavailableShow in Telegram
Вышло в релиз приложение iOS IQ
IQ - отличный пример пет-проекта iOS-разработчика. Если вам нравятся квизы по iOS разработке, хотите проверить свои знания по многопоточности, работе с памятью, архитектуре и множеству другого, советую это приложение!
🟣Индивидуальная статистика
🟣Личный ранг
🟣Рейтинг среди игроков
🟣История ответов и полезные ссылки
🟣Приложение бесплатное и без встроенных покупок
🔥 12👍 7❤ 4🤔 4🎉 1👌 1
Вышло в релиз приложение iOS IQ
IQ - отличный пример пет-проекта iOS-разработчика. Если вам нравятся квизы по iOS разработке, хотите проверить свои знания по многопоточности, работе с памятью, архитектуре и множеству другого, советую это приложение!
🟣Индивидуальная статистика
🟣Личный ранг
🟣Рейтинг среди игроков
🟣История ответов и полезные ссылки
🟣Приложение бесплатное и без встроенных покупок
Repost from Android Broadcast
Photo unavailableShow in Telegram
Получение D-U-N-S номера для мобильных разработчиков (4м) - статья с инструкцией по получению.
DUNS - это уникальный девятизначный идентификатор, присваиваемый одним из крупнейших кредитных бюро для бизнеса
#googleplay #appstore
👍 2
Photo unavailableShow in Telegram
🐥 Проверка зависимостей на поддержку Swift 6
Swift 6 приносит нам новый режим работы с многопоточностью, помогающий разработчикам на этапе компиляции видеть потенциальные проблемы и условия для гонки. Преимущества данного подхода раскроются только при использовании зависимостей, поддерживающих проверки безопасной многопоточности.
Чтобы понять, какие из зависимостей уже поддерживают Swift 6 многопоточность, в индексе пакетов будет отображаться уровень поддержки
👍 8
🔨 XcodeKit - Расширения для Xcode
С момента появления расширений для Xcode, сообщество уже создало целое множество расширений. Сегодня хочу поделиться с вами теми, которые я использую или планирую.
🟢Swimat - плагин форматирования кода, ставится через brew
🟢SwiftAI - генерирует класс модели из JSON
🟢Localizer - превращает обычную строку в локализованую
🟢Rubicon - генерирует реализации протоколов для тестов
🟢XSpellCheck - проверка орфографии, поддерживающее CamelCase
🟢EricsMark - выделяет блоки кода //MARK:
🟢PlayAlways - создает новый Playground одним нажатием
Какими расширениями пользуетесь вы?
XcodeKit | Apple Developer Documentation
Create extensions to add commands to the Xcode source editor.
❤ 5
Photo unavailableShow in Telegram
📱 Scroll geometry and position view modifiers in SwiftUI on iOS 18
На WWDC24 расширили применимость SwiftUI и для работы со скролом. Нам добавили метод onScrollGeometryChange который предоставляет всю информацию о изменении геометрии скролла:
🟢bounds
🟢containerSize
🟢contentInsets
🟢contentOffset
🟢contentSize
🟢visibleRect
В скором времени, можно будет отказаться от костылей с использованием GeometryReader при работе с обычным скролом 💃
❤ 2🔥 1🤔 1🎉 1
اختر خطة مختلفة
تسمح خطتك الحالية بتحليلات لما لا يزيد عن 5 قنوات. للحصول على المزيد، يُرجى اختيار خطة مختلفة.