Что нового в Xcode 12?

27 августа 2020

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

Xcode - это сердце разработки iOS, macOS, tvOS и watchOS. За прошедшие годы он претерпел немало существенных изменений. Хоть и надежды на Xcode для iPad в этом году снова не оправдались, это не помешало Xcode 12 получить некоторые интересные обновления.

Далее мы рассмотрим основные нововведения, которые IDE приготовила для нас помимо богатой и изысканной иконки.

Новый жизненный цикл Swift UI App

Как только вы создадите новый проект Xcode, вас встретит обновленная панель, которая позволит выбрать между SwiftUI App и UIKit App Delegate.

Впоследствии, проект без App Delegate и Scene Delegate создастся с начальным набором инструментов и использованием атрибута @main, введенного в Swift 5.3.

Новые вкладки документов и изменения внешнего вида

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

Что еще более важно, вкладки имеют фиксированное место и не заполняют собой пространство IDE.

Размер значка навигатора проекта и шрифт текста теперь можно настроить в соответствии с системными настройками, используя опцию "Sidebar Font & Icon Size" из общих настроек в Xcode.

Добавление цвета в папку Assets.xcassets позволяет нам устанавливать цвета темы для наших приложений. Также, теперь доступна поддержка SVG-векторов.

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

Органайзер, оснащенный показателями параметров

Окно органайзера, которое позволяет просматривать и загружать архивы продуктов, теперь может похвастаться подробной аналитикой приложений - от использования батареи до записи памяти во время запуска - все, что вам нужно для диагностики проблем и оптимизации приложений.

Теперь вы можете изменить размер окна "Add device", которое появляется из Devices and Simulators.

Надежное автозавершение

Автоматическая подстановка кода всегда была ахиллесовой пятой Xcode. Иногда на загрузку уходило слишком много времени, однако это исправляется с Xcode 12. Мы получаем молниеносное автоподстановку, которая также заполняет дефолтные значения.

Одна из странных проблем с новым автозаполнением заключается в том, что оно не предлагает вам опцию по умолчанию (), таким образом, вы вынуждены очистить его вручную.

Помимо комментирования кода без переопределения дефолтных значений по умолчанию, он обертывает(wraps) его с помощью ## в редакторе кода GitHub. Наверное, это будет исправлено в будущих обновлениях.

Обновленные превью SwiftUI и завершения кода

Превью SwiftUI были обновлены и теперь позволяют просматривать виджеты и App Clips. Теперь возможно легко дублировать эти превью и устанавливать различные темы, например Dark Mode и прочие.

Теперь вы можете перетаскивать встроенные элементы управления SwiftUI с Inspector-панели непосредственно в код или превью, как показано ниже:

Xcode 12 позволяет быстро просматривать превью SwiftUI на вашем устройстве и сохранять пользовательские виды как фрагменты кода с помощью фреймворка DeveloperToolsSupport.

Еще одним неожиданным дополнением в этом году является введение мини-карты в Interface Вuilders ваших Storyboard`ов, что позволяет вам легко перемещаться по контроллерам.

Усовершенствования в симуляторах

Теперь симуляторы можно настроить так, чтобы они оставались в топе относительно другим приложениям из меню окна в Xcode 12. Больше не нужно переключаться между окнами, чтобы убедиться, что симулятор находится в топе.

Еще несколько замечательных дополнений к симуляторам:

  • Возможность работы окна симулятора в полноэкранном режиме
  • API близлежащих взаимодействий работает с симулятором. Теперь, если вы перетаскиваете два симулятора вдоль экрана, их дистанцию и изменение положения можно просматривать в режиме реального времени.
  • Превью на устройстве теперь можно просматривать в симуляторах.

Возможность тестирования покупок в StoreKit

Xcode 12 теперь предоставляет встроенную поддержку для тестирования покупок в приложении без необходимости полагаться на App Store Connect. Вы можете имитировать покупки, квитанции и различные подписки в Sandbox Environment.

Заключение

В этом году в Xcode 12 появилось много интересных нововведений, которые придутся вам по душе.

Create ML - дополнительное, но независимое приложение, которое поставляется с Xcode, получило возможности Style Tranfer. При отладке breakpoint`ов теперь отображается индикатор количества выполнений данной строки. Xcode Playgrounds теперь могут импортировать и использовать пакеты и фреймворки Swift.

Пришло время поприветствовать симуляторы на разделенных экранах, которые показаны ниже:

Помимо всего этого, Xcode 12 предоставляется с любым новым Mac`ом, который будет запускать приложение независимо от локальной архитектуры macOS.

Спасибо за прочтение :)

Оригинал статьи

Содержание