Всем привет! С вами снова я, Анна Жаркова, руководитель группы разработки в ГК Usetech. 10 июня прошел долгожданный Keynote WWDC 2024. Прошел и оставил после себя легкий флер разочарования. Заявлено было много, показано много. Какие-то новинки (например, функция Mirroring для трансляции изображения и звука с iPhone на десктоп) вызвали одобрение аудитории, как полезные и нужные. Другие (например, настройка визуального оформления домашнего экрана, общая тема для иконок и то, как это реализовано) оставили многих в недоумении. Да, много полезного, но из-за того, что ожидания от анонса разошлись с действительностью, это меркнет на общем фоне.

Еще больше недоумения вызвал функционал Apple Intelligence. И даже не то, что какие-то вещи были показаны довольно скомкано. Разочарование вызвало 2 момента: дата выхода инструментария и отсутствие тематических сессий:



Были анонсированы и «умные» тулзы для Xcode, и встроенный ChatGPT. Но как этим пользоваться, как встраивать, как с этим работать, такой информации напрямую нет. Она частично размазана по сессиям по вспомогательным технологиям. Из них и будем черпать знания.


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

Swift и Performance

Ни одна новинка для iOS и OSX невозможна без мощного инструментария языка Swift, управления памятью и улучшения перформанса. Поэтому большое внимание уделено именно языку Swift, iOS SDK и возможностям. Итак, встречаем тестирование в Swift
Meet Swift Testing, Go further with Swift Testing (11 июня), Run, Break, Inspect: Explore effective debugging in LLDB (12 июня). По самому Swift нам расскажут про миграцию Swift 6 Migrate your app to Swift 6. Также Swift позиционируется не только как язык для клиентских приложений, но и серверных: What’s new in Swift, Explore the Swift on Server ecosystem (12 июня), микроконтроллеров: Go small with Embedded Swift (11 июня). Много внимания потокобезопасности и взаимодействию Swift-C++ напрямую.

SwiftData также порадует нас новым функционалом (Track model changes with SwiftData history, What’s new in SwiftData и Create a custom data store with SwiftData). Также встречаем best practices от Apple по нативному перформансу и управлению памятью: Explore Swift performance (13 июня), Consume noncopyable types in Swift (13 июня), Analyze heap memory (13 июня) и Discover Swift enhancements in the Vision framework (12 июня).

SwiftUI и UIKit

iPad OS получил не только калькулятор, но и гайд по табам и боковому меню Elevate your tab and sidebar experience in iPadOS. Как и было ожидаемо, нам представили улучшенные анимации для SwiftUI Enhance your UI animations and transitions (11 июня) и
Create custom visual effects with SwiftUI (13 июня). Основные новинки и лучшие практики ловим в What’s new in SwiftUI, Demystify SwiftUI containers (12 июня),
SwiftUI essentials и What’s new in AppKit.

Не забыли Apple и про доступность и адаптивность: Catch up on accessibility in SwiftUI и Get started with Dynamic Type (13 июня), Tailor macOS windows with SwiftUI (12 июня).
Не забыли и про UIKit. По-прежнему это база, на которой живет SwiftUI, и которая живет: What’s new in UIKit. Ставка на интеграцию SwiftUI <-> UIKit и улучшение взаимодействия.
А также много сессий по использованию SwiftUI с SDK и продуктами Apple.

Vision OS

Vision OS наделал много шума в прошлом году. Apple продолжает активно развивать Vision OS и Vision Pro, а также вспомогательные технологии. Сессий по VisionOS в этом году ну очень много, поэтому выделю некоторые.

Одной из самых ожидаемых стала интеграция Vision OS с HealthKit Get started with HealthKit in visionOS (11 июня). Ставка идет и на игры Explore game input in visionOS (11 июня).

Также добавлена расширенная работа с окнами в SwiftUI Work with windows in SwiftUI (11 июня) и Meet TabletopKit for visionOS (11 июня) для расширения пользовательского опыта.

Большое внимание уделяется в целом гайдом по созданию приложений на Vision OS Design great visionOS apps, Discover RealityKit APIs for iOS, macOS and visionOS,
Introducing enterprise APIs for visionOS.

Интеграция с картами, видео, игры, ARKit… И многое другое.

WidgetKit, Live Activity, AppIntent

Как я и предполагала, этому функционалу тоже решили уделить внимание. Будущая интеграция с ИИ требует реакции и взаимодействия с приложения без действий пользователя, и это как раз будет обеспечиваться AppIntent: Bring your app’s core features to users with App Intents, What’s new in App Intents (11 июня), Design App Intents for system experiences (12 июня).

Live Activity заходят на часы Bring your Live Activity to Apple Watch, Design Live Activities for Apple Watch (11 июня). Практики для улучшения взаимодействия Live Activity и перформансу обновлений смотрим Broadcast updates to your Live Activities (12 июня).
Практики по конфигурации виджетов и лонч-скринов смотрим в Extend your app’s controls across the system (11 июня).

App Store

В этом году упор сделан на API для встроенных покупок в приложениях, нативного эквайринга и управления подписками. Будет ли фокус на работу с API для собственных магазинов — неизвестно, но исключать нельзя. Смотрим What’s new in App Store Connect (13 июня) для общей информации о новинках (анонсировано, что это коснется и Testflight), Implement App Store Offers (13 июня), Explore App Store server APIs for In-App Purchase (12 июня), What’s new in StoreKit and In-App Purchase (10 июня). Полезной будет сессия Extend your Xcode Cloud workflows (13 июня) для настройки флоу облачного деплоя, автоматизированного тестирования и дистрибуции с помощью App Store Connect API.

AI, ML

Небольшой технологический задел от Apple. Есть сессии по машинному обучению и ИИ (What’s new in Create ML, Explore machine learning on Apple platforms, Deploy machine learning and AI models on-device with Core ML (11 июня), Support real-time ML inference on the CPU (11 июня)). Какие-то сессии относятся больше к функционалу распознавания объектов для visionOS Explore object tracking for visionOS.
Также есть сессии по распознаванию рукописного текста Get started with Writing Tools , встраиванию семантического поиска Support semantic search with Core Spotlight (12 июня) и Genmoji, нежно любимые командой Apple (Bring expression to your app with Genmoji).

Есть еще сессии по WeatherKit, FinanceKit, картам.

Со всеми сессиями недели можно ознакомиться здесь по мере их публикации.

А что запомнилось/понравилось вам? Что разочаровало?

Комментарии (0)