iOS дайджест #48: concurrency проти Xcode та (не)поширеність Swift
SwiftUI
The SwiftUI Layout Protocol — Part 1
Вичерпний лонгрід на тему кастомних лейаутів в SwiftUI. Ще й з анімаціями.
Apple’s use of Swift and SwiftUI in iOS 16
Ресерч на тему того, наскільки взагалі поширений Swift та SwiftUI в iOS 16.
Демо проєкт з використанням Dynamic Island.
Concurrency
Xcode 14.0 generates wrong concurrency code for macOS targets
macOS is hard: так вийшло, що async/await API взагалі не працює для macOS-додатків, якщо білдити через Xcode 14.
Enabling Concurrency warnings in Xcode 14
А якщо у вас iOS-проєкт з async/await, тоді варто увімкнути додаткові перевірки.
What are Sendable and @Sendable closures in Swift?
Що таке Sendable і як цей протокол допомагає зробити асинхронний код безпечніше.
Лайфгаки
Package файл для SPM — це просто код на Swift. А це означає, що там також можна створювати змінні для опису спільних залежностей.
Регекс для заміни guard let на короткий запис, який став доступний у Xcode 14 та Swift 5.7.
Можна додати особливий ключ в info.plist. I тоді App Store Connect не буде кожен раз запитувати чи використовуєте ви шифровання.
Писати extensions для масивів з конкретними типами стало набагато простіше.
Теми: iOS, iOS дайджест, Swift, SwiftUI, tech, Dynamic Island
4 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарів