Всем привет, с вами я, Анна Жаркова, ведущий разработчик компании Usetech.

Мы с нетерпением ждали новую сессию WWDC, особенно после прошлогодних изменений, и, наконец, дождались! Кого-то Keynote разочаровал, т.к люди ждали больше и большего в плане анонсов и возможностей. Но мы-то знаем, что у нас впереди целая неделя, и очень много интересных видео-сессий по новинкам в iOS и Swift, за которые можно простить Apple и недостатки Keynote.

Итак, давайте пройдемся по тому, что нас ожидает.

В принципе все сессии можно поделить на несколько групп:

  • новинки iOS и Swift;

  • новинки SwiftUI, Widgets;

  • accessibility;

  • средства поддержки новых фичей

1. Concurrency, async/await

Самая, на мой взгляд, ожидаемая вещь этого WWDC. В Swift 5.5 добавили очень много proposal по реализации механизма concurrency на async/await.

Concurrency (она же многопоточность) была в Swift и раньше, но раньше мы использовали Grand Central Dispatch с closure и коллбэками. Временами код превращался в callback-hell, а потеря вызова хотя бы одного коллбэка превращала дебаг в увлекательное приключение.

Теперь же мы получим async/await, похожий по синтаксису на реализацию Task (там кстати будут Task) в .Net. Кто-то сравнивает это с корутинами. На мой взгляд не совсем верно, но посмотрим после сессии про Actors.

В любом случае, это грандиозное и глобальное изменение, которое превратит код в конфетку. 

Подробно можете пока глянуть у Пола Хадсона

Разумеется, будут сессии и кодлабы и по доработке реализации многопоточности в SwiftUI, и при работе с Core Data, сетью.

Смотрите 8 - 10 июня.

2. Новинки SwiftUI

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

В сессию "What's new in SwifUI" анонсированы новинки UI компонентов, расширенная поддержка мультиплатформенности (т.е под разные устройства Apple). Например, несколько сессий про разработку для WatchOS и MacOS.

Будут сессии и про многопоточность на SwiftUI, про работу с CoreData, локализацию приложений. Работу с графикой и перформансом. В "Demystify SwiftUI" нам расскажут про глубины (так заявлено, по крайней мере).

Лично мне бы хотелось узнать, а доработали ли Apple механизм навигации в SwiftUI каким-либо образом. Однако, в анонсах такая информация или отсутствует, или скрывается за лукавым "so much more".

3. Swift, Foundation, UIKit

Вышедшая версия Swift 5.5, разумеется, содержит в себе изменения не только по многопоточности. Что это будет конкретно, нам расскажут в "What‘s new in Swift".

Foundation также принесет много изменений. По крайней мере, связанных со строками и форматированием. "И не только"(с)

Расширение поддержки различных устройств требует изменений и визуальных. Новинки UIKit c поддержкой iPadOS, MacOS, улучшенным перформансом и сохранением приватности ждем на "What's new in UIKit". Также нас ждет сессии про дизайн-систему кнопок и action sheet, перед которыми Apple советуют посмотреть “Modernizing Your UI for iOS 13”.

4. Widgets, AppClips

WWDC 2020 нам представили новые виджеты (разрабатываются на SwiftUI) iOS. С одной стороны, это была воодушевляющая новинка, позво��яющая привлечь больше внимания пользователей к приложению. С другой, вне присутствовали явные недоработки и недостатки.

В этом году Apple продолжают развивать эту технологию, о чем нам и расскажут на нескольких тематических сессиях.

Изменения коснутся и App Clips. Будут и новинки, перед которыми советуют посмотреть прошлогодние "Explore App Clips” и “Configure and link your App Clips”, и как построить блиц-приложение, чтобы оно было мощным, быстрым, но легким (ибо 10 мб).

5. Network, Privacy, Performance

Мы не ошиблись, и предположения о тенденции на усиление безопасности, обеспечение приватности, а значит, и ограничения, подтвердились. Что именно, узнаем опять же на сессиях.

Одной из причин можно назвать как выросший объем сетевого трафика. Другой - новые возможности по связи между устройствами Apple одного и того же пользователя.

Т.к и в том, и в другом случае нужно обеспечить хорошую сеть и перформанс, то много внимания отводится и работе с Network framework, акселерации и оптимизации.

6. Графика, аудио, ML, AR

Новые технологические возможности, как те же пространственные звонки в FaceTime, 3D карты, Object Capture предполагают расширенный и мощный функционал по работе с аудио, видео, машинному обучению, графикой и ARKit. На все будут соответствующие сессии.

Также нас ждут новинки AVFoundation, Apple Music Api, MusicKit (Meet MusicKit for Swift) и новый ShazamKit.

7. Accessibility


Мировая тенденция на развитие технологий, чтобы им могли пользоваться все, включая людей с ограниченными возможностями, сохраняется. Очень много внимания на WWDC 2021 будет отведено соответствующей тематике. Это будут сессии и по дизайну, поддержке в SwiftUI, различными устройствами, а также технологии VoiceOver и оффлайн работе с Siri.

8. XCode Cloud, Testflight for MacOS

Apple создали свой CI/CD сервис для построения приложений и фреймворков под все платформы. Это одна из крутейших новинок, которая здорово облегчит жизнь все разработчи��ам. Как настроить всю эту красоту, включая собственные workflow, смотрите на сессиях.

Также появляется возможность протестировать приложение через Testflight как на вашем макбуке, так и iMac. И что важно, интегрировать с Xcode Cloud. Подробнее на Meet TestFlight on Mac.

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

Only registered users can participate in poll. Log in, please.
А чего ждете больше всего вы?
75%Async/await21
60.71%SwiftUI17
14.29%Widgets4
28.57%Перформанс8
14.29%Сеть, безопасность4
17.86%ML, графика, аудио5
7.14%AR2
28 users voted. 14 users abstained.