Привет, Хабр! На связи Александр, iOS‑эксперт компании KTS.

В это время мы обычно строим планы на будущее, и я уверен, что лучшее начало нового года — обучение новому и развитие навыков. Надеюсь, что в этом вам помогут видео докладов с осенних митапов, которые мы провели с командой iOS‑разработки и на которых разобрали темы с последней конференции Apple: WWDC 2023.

Собрал в одной статье все вебинары и их краткое содержание:

Mergeable libraries

Александр Сычев

iOS-эксперт

Последнее решение от Apple в области линковки и поставки кода. Mergeable libraries может упростить процесс разработки и улучшить производительность приложений. Решение позволяет сочетать внутри приложения лучшие особенности статической и динамической линковки внешних или внутренних библиотек внутри проекта.

В докладе — как настроить Mergeable Libraries, их преимущества перед классическими статическими и динамическими фреймворками и выводы по производительности.


Что нового в Xcode

Анастасия Ищенко

iOS-разработчик KTS

Кратко о нововведениях:

1. Превью для UIKit. Они достаточно требовательные к устройству, например не завелись на MacBook 2016 16ГБ ОЗУ.

2. Закладки для кода и удобный интерфейс работы с ними.

3. Получение цвета. Теперь не нужно писать названия цветов/картинок в кавычках, перепроверяя, точно ли название написано правильно.

Для получения цвета, названного «example1» можно использовать следующее:

// SwiftUI
Color(.example1)

// UIKit
UIColor(resource: .example1)

Для получения изображения, названного «example2»:

// SwiftUI
Image(.example2)

// UIKit
UIImage(resource: .example2)

4. Локализация приобрела графический интерфейс с подсказками и возможностью добавления к словам единственного и множественного числа.

5. Логи стали намного понятнее за счёт изменения внешнего вида. Теперь можно самостоятельно выбирать, какая информация о логах будет показана в консоли, а какая — нет.


Push Notifications

Лена Качармина

iOS-разработчик KTS

Обновления работы Notifications последних версий iOS:

  • Как менялось визуальное представление

  • Добавление действий к нотификации

  • Что такое Notification Summary

  • Какие есть возможности для обхода режимов фокусирования

  • Как и зачем использовать Focus Filters

  • Какие возможности представляет новинка 2023 — Push Notifications Console


Live Activities

Даниил Алексеев

iOS‑разработчик KTS

Apple впервые представила Live Activities в iOS 16. Это удобный способ отслеживать ход выполнения задачи в приложении. С его помощью можно создавать полезные функции для экрана блокировки, Dynamic Island и режима ожидания StandBy.

В докладе разбираем, как пользователь взаимодействует с Live Activities, какой контент мы можем отображать в них и что нового для LA было представлено на WWDC23. Также рассказали про возможности дизайна и анимаций, рассмотрели примеры приложений с Live Activities и техническую часть реализации LA в iOS‑приложении.


Что нового в UIKit

Александр Сычев

iOS-эксперт

Улучшения UIKit, которые могут сделать его более привлекательным для разработки приложений для iOS, iPadOS и macOS:

  • Previews: возможность предпросмотра изменений в UI‑коде без необходимости перекомпиляции

  • Обновления в жизненном цикле UIViewController: новый метод viewIsAppearing(_:)

  • Наложение эффектов на изображения: унификация анимаций SFSymbols

  • Состояние «Нет данных» для UIViewController: новый метод для управления отображением контента при отсутствии данных.


Что нового в Swift 5.9

Лена Качармина

iOS-разработчик KTS

Ограничения и возможности Swift 5.9 — разбор новых фичей и их применение на практике, например:

  • Некопируемые структуры

  • Новый синтаксис дженерик-функций

  • Протокол Clock


Swit Macros

Анастасия Ищенко

iOS-разработчик KTS

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

Это полноценные расширения для компилятора. Они пишутся на языке Swift, и благодаря этому их возможности довольно широки. Макросы разделены на 7 ролей, от которых зависит, как и где может быть применён макрос и какой тип кода он создаёт.

Для написания макросов разработчик должен уметь работать с AST (Abstract Syntax Tree) и понимать SPM (Swift Package Manager).

К счастью, для использования макросов эти знания не нужны. Процесс применения макросов достаточно удобен: проверка на синтаксическую корректность, соответствие типов осуществляется как до применения макроса, так и после, что существенно облегчает процесс отладки программы. Макрос можно развернуть и увидеть код, который будет создан, все ошибки отображаются прямо в месте применения макроса.

На данный момент в сети уже много интересных макросов, которые помогают избегать написание шаблонного кода вручную.


Swift Data

Даниил Алексеев

iOS-разработчик KTS

Swift Data — новый Swift‑фреймворк для работы с хранением данных внутри приложения, созданный на основе существующего фреймворка CoreData и использующий современные возможности языка Swift, такие, как макросы, появившиеся в Swift 5.9.

В докладе рассмотрели основные концепции фреймворка, схему данных, сущности, особенности работы с UIKit и SwiftUI, а также сравнили новый инструмент с CoreData и рассмотрели примеры приложений.


Подписывайтесь на наши каналы, чтобы всегда быть в курсе новых статей и видео:


Другие наши статьи по iOS‑разработке:

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