Xcode: гайд по IDE от Apple для новичков
Где писать код на Swift и действительно ли для этого нужен MacBook.
![](https://248006.selcdn.ru/main/iblock/a2b/a2bc2df8ac8af676ddda4fb062d20184/19f0748216f1b17b2be4a70f97152a91.png)
![](https://248006.selcdn.ru/main/iblock/a2b/a2bc2df8ac8af676ddda4fb062d20184/19f0748216f1b17b2be4a70f97152a91.png)
Иллюстрация: freepik / Freepik / Xcode / Apple / Colowgee для Skillbox Media
Продолжаем разбираться с главными инструментами разработки под устройства Apple. В предыдущей статье мы по полочкам разложили базовые компоненты языка Swift и показали, как начать с ними работать. Сегодня препарируем Xcode — единственную среду разработки для операционок и гаджетов Apple.
Из этой статьи вы узнаете:
- что такое Xcode;
- из чего состоит среда разработки;
- какие приложения можно создавать в Xcode;
- как установить Xcode;
- как запустить и настроить Xcode;
- как создать новый проект;
- как запустить приложение в Xcode;
- как добавлять таргеты.
![](/upload/setka_images/14204513082024_ca6e12b4b4e69e1d78793706a12a066b4540c2e5.jpg)
ЭКСПЕРТ
Анна Жаркова
Lead Mobile Developer в Usetech. Пишет нативные приложения под iOS и Android и кросс-платформенные на Xamarin, Xamarin.Forms и Kotlin Multiplatform. Эксперт Skillbox по мобильной разработке.
Автор на «Хабре» и Medium. Пишет статьи, выступает на конференциях и митапах. Член программного комитета Mobius, CodeFest, «Стачка». Увлекается живописью и участвует в выставках.
Что такое Xcode
Xcode — это интегрированная среда разработки (IDE) компании Apple, предназначенная для создания приложений под операционные системы iOS, iPadOS, watchOS, macOS, tvOS и visionOS. Xcode похож на большой комбайн, в котором собраны все необходимые для разработчиков инструменты.
![](/upload/setka_images/09253607082024_accf102caaa970ce65d217b9ae9a8e9a57caa67c.jpg)
Изображение: Xcode / Skillbox Media
У Xcode есть важная особенность: среда разработки официально поддерживается только на компьютерах Mac. Можно попытаться запустить её на Windows или на Linux с помощью виртуальной машины, но это нарушает условия использования программного обеспечения Apple. К тому же через эмулятор могут работать не все функции, часто возникают ошибки.
Xcode предназначена в первую очередь для разработки на Swift и Objective-C, но поддерживает и другие языки программирования — например, С, C++, Python, Ruby, Java.
![](/upload/setka_images/09253707082024_116fabfed9db662d1ca4922820b351a40369b79d.png)
Читайте также:
Из чего состоит среда разработки
Xcode состоит из нескольких основных компонентов:
- Редактор кода. Именно в нём разработчики проводят больше всего времени. Редактор кода в Xcode поддерживает работу со всеми современными функциями, включая подсветку синтаксиса, автодополнение, рефакторинг, форматирование и работу с версиями. Если возможностей не хватает, то функциональность Xcode можно расширить с помощью сторонних плагинов.
![](/upload/setka_images/09253707082024_08fda0244b5397e030ee401fd2bea5b24f78a72b.jpg)
Скриншот: Xcode / Apple Inc.
- Компиляторы. Программы, которые преобразуют написанный разработчиком код в формат, понятный для устройств Apple. В Xcode для Си-подобных языков, включая Objective-C, используется Clang, а для Swift — Swift Compiler.
![](/upload/setka_images/09253907082024_46dcb59ca8a4e3d30a63e20d6c27651d3a86b8cd.png)
Читайте также:
- Графические фреймворки. Для разработки пользовательских интерфейсов в Xcode есть специальные фреймворки: UIKit и SwiftUI. UIKit менее гибкий и уже считается устаревшим, а SwiftUI — основа интерфейсов всех современных приложений в App Store.
![](/upload/setka_images/09253607082024_6896a8696b8038f4fc8989ab005e4fccc3b90047.jpg)
Скриншот: Xcode / Apple Inc.
- Тестирование и отладка кода. Даже опытным программистам нужны инструменты для проверки кода и тестирования проектов. В Xcode для этих задач предусмотрены анализаторы и отладчики.
![](/upload/setka_images/09253707082024_c7c2d6650fe8dd3125b1541cb39af56649bd56fa.jpg)
Скриншот: Xcode / Apple Inc.
- Симуляторы. Не у каждого разработчика приложений под рукой есть коллекция моделей iPhone за последние несколько лет, а код надо тестировать на всех актуальных устройствах. В Xcode для этого есть симуляторы — виртуальные устройства Apple. На них можно запускать свои приложения и проводить автоматизированное тестирование.
![](/upload/setka_images/09253607082024_0ed1686442ac630326a48ddcef43684fa02b904b.jpg)
Скриншот: Xcode / Skillbox Media
- Xcode Cloud. В 2021 году Apple запустила Xcode Cloud — облачный CI/CD-сервис. С его помощью разработчики могут настроить тестирование и сборку приложений на серверах компании, чтобы сэкономить на обслуживании собственного оборудования. Xcode Cloud запускает процесс тестирования кода каждый раз, когда разработчики сохраняют новую версию приложения. Это позволяет быстро находить ошибки и уязвимости в проектах. После успешного тестирования сервис загружает обновление в App Store.
![](/upload/setka_images/09253607082024_b30ff17d14b759c017197570526ff51b33cc83c5.jpg)
Скриншот: Xcode / Apple Inc.
- Системы управления версиями. Xcode поддерживает работу с Git и Subversion, обеспечивая возможность отслеживать изменения в исходном коде. С помощью этих систем можно совместно работать над проектами, сравнивать изменения, сохранять предыдущие версии файлов и при необходимости откатываться к ним.
![](/upload/setka_images/09254207082024_db60bdbf69d4db715e427a79d6416cbaedf9ddcb.png)
Читайте также:
- Распространение бета-версий. У Apple есть TestFlight — сервис, позволяющий выпускать бета-версии своих приложений. С его помощью пользователи могут присылать отзывы и отчёты об ошибках. Разработчик видит эти сообщения и вносит изменения в код проекта. С помощью Xcode можно настроить поставку бета-версий в TestFlight.
- Управление базами данных. Xcode поддерживает различные фреймворки для работы с базами данных. Это могут быть как фреймворки самой Apple, например Core Data и SwiftData, так и сторонние решения — SQLite, Realm или Firebase.
![](/upload/setka_images/09254207082024_32b3c193345357b98799ef493326c03d9b36174f.png)
Читайте также:
- Репозиторий шаблонов. В Xcode есть специальный локальный репозиторий, в котором разработчики могут сохранять шаблоны кода. Его можно использовать, чтобы сохранить интересное решение проблемы или часто используемый фрагмент кода.
- Playgrounds. Xcode подходит не только профессиональным программистам, но и новичкам, которые только начинают изучать разработку для устройств Apple. Для них в Xcode есть интерактивные песочницы Playgrounds, в которых код выполняется построчно, а ошибки выводятся сразу, не после сборки проекта.
Какие приложения можно создавать в Xcode
Xcode не ограничивает программистов и позволяет создавать разные типы приложений:
- Стандартные приложения. С помощью Xcode можно разработать приложение для любой операционной системы Apple. Это может быть небольшой виджет для умных часов Apple Watch или полноценный онлайн-кинотеатр для Apple TV.
- Игры. В IDE есть инструменты для работы с 3D-графикой и популярными движками. Это позволяет создавать игры любой сложности.
- Фреймворки и библиотеки. Если вам показалось, что для Swift нет библиотеки, решающей ваши задачи, то её можно создать самостоятельно. Xcode может пригодиться в создании не только приложений, но и инструментов для тех, кто эти приложения разрабатывает.
- Инструменты командной строки. Некоторым приложениям, например серверным, не нужен тяжеловесный интерфейс. В Xcode можно разрабатывать утилиты, которые работают в командной строке.
- Бэкенд онлайн-сервисов. Apple активно пытается сломать парадигму «Swift только для iOS», поэтому внедряет новые сценарии использования языка программирования. Например, в Xcode можно разработать бэкенд для сайта или приложения.
- Машинное обучение. В среде разработки есть интеграция с фреймворками Create ML и Core ML, которые позволяют обучать нейросети и реализовывать ИИ-функции в приложениях.
![](/upload/setka_images/09254207082024_d7bd82ca34111eda7ea0338e69bc355b8726650f.png)
Читайте также:
Как установить Xcode
Xcode можно скачать из магазина приложений App Store или с официального сайта для разработчиков. Первый способ проще и удобнее, так как из App Store автоматически скачивается и устанавливается последняя версия программы.
Установка из App Store
- Откройте App Store на Mac, используя иконку в Dock или Launchpad.
- В строке поиска введите Xcode и нажмите Enter.
- Нажмите кнопку «Загрузить» рядом с Xcode. Если потребуется, введите пароль от Apple ID. После завершения загрузки автоматически начнётся установка программы.
![](/upload/setka_images/09253707082024_fc9956ee2f4201e204a5532c68850c6715ed24e0.jpg)
Скриншот: App Store / Skillbox Media
Установка с официального сайта
Этот способ подойдёт опытным разработчикам, которым нужна бета-версия среды разработки с поддержкой всех новых функций. Важно помнить, что бета-версии могут работать нестабильно. Для установки с официального сайта:
- Перейдите на сайт Apple Developer.
- Войдите в учётную запись или создайте новую.
- Выберите нужную версию Xcode в разделе Downloads и скачайте установочный файл.
![](/upload/setka_images/09253607082024_6caf85fa09e0642959e62c753d9a2f18236eb1da.jpg)
Скриншот: App Store / Skillbox Media
- Перейдите в папку «Загрузки», найдите загруженный пакет и установите его, следуя инструкциям на экране.
Как запустить и настроить Xcode
После установки Xcode нужно настроить среду разработки. Если планируете создавать полноценные приложения и публиковать их в App Store, то следует связать Xcode с учётной записью Apple ID:
- Откройте Xcode из папки «Программы» или кликните на иконку среды разработки в Launchpad.
- В верхнем меню выберите Xcode → Settings (или нажмите ⌘ + ,).
- Перейдите во вкладку Accounts.
![](/upload/setka_images/09253707082024_c0c954a3a268bfc515e88839a41a25de5bd1b194.jpg)
Скриншот: Xcode / Apple Inc.
- Нажмите кнопку + в нижнем левом углу и выберите Apple ID.
![](/upload/setka_images/09253907082024_cece785eb92cd643f5e788e5f37e3d933a76f56c.jpg)
- Введите данные учётной записи и нажмите Next.
Таким же образом можно связать Xcode с аккаунтами GitHub, Bitbucket или GitLab. Это полезно, если вы будете работать в команде или хотите делиться кодом своих проектов.
При первом запуске Xcode предложит установить дополнительные утилиты — например, инструменты командной строки (Command Line Tools) и симуляторы. Согласитесь и подождите, пока установка завершится. Этот шаг можно совершать позже, но лучше сразу подготовить среду разработки.
Как создать новый проект
Чтобы создать новый проект:
- Запустите Xcode и выберите пункт Create a new Xcode project. Если окно с такой кнопкой не появилось на экране, то воспользуйтесь сочетанием клавиш ⌘ + Shift + N.
- Выберите шаблон проекта. Для этого надо кликнуть на название необходимой операционной системы в верхней части окна, а потом выбрать тип проекта. После этого нажмите Next.
![](/upload/setka_images/09254107082024_2229e417950c39bd1ac90259b6c781a232a40430.jpg)
Скриншот: Xcode / Apple Inc.
- Укажите имя проекта и идентификатор разработчика, а также выберите язык программирования, графический фреймворк и тип базы данных. Нажмите Next.
![](/upload/setka_images/09253807082024_71b97f3681cfd481f98f8279e17d064ae63ea66a.jpg)
Скриншот: Xcode / Apple Inc.
- Выберите место для сохранения проекта и нажмите Create.
![](/upload/setka_images/09253807082024_b96f49b701f581862428f9c58e1a46c731d0aa89.jpg)
Скриншот: Xcode / Apple Inc.
После этого откроется окно проекта. В левой части экрана находятся файлы приложения, которые Xcode добавила согласно выбранному шаблону. В центре располагается редактор кода, справа — окно превью приложения.
![](/upload/setka_images/09253807082024_d75dd4921f9f5ca9dc828e1efafbd5a21dfa9c5d.jpg)
Скриншот: Xcode / Apple Inc.
Как запустить приложение в Xcode
Для запуска проекта на симуляторе или физическом устройстве надо скомпилировать исходный код в исполняемый файл и связать его со всеми подключёнными сторонними библиотеками. Следуйте инструкции, чтобы собрать приложение:
- В строке проекта в верхней части экрана выберите цель запуска приложения. Это может быть один из симуляторов или физическое устройство, подключённое к Mac с помощью кабеля.
- Выберите в меню Product → Run или воспользуйтесь сочетанием клавиш ⌘ + R.
После этого Xcode проверит код проекта, скомпилирует его и запустит на выбранном симуляторе или устройстве. Если в коде будут ошибки, то сообщения о них появятся в терминале.
Как добавлять таргеты
Для сборки и запуска проектов Xcode использует таргеты — специальные конфигурации, сообщающие, для каких операционных систем создаётся проект и какие фреймворки следует использовать. Например, если вы разрабатываете кросс-платформенное приложение для iOS, iPadOS и macOS, то для каждой из операционных систем надо указать свой таргет.
Чтобы добавить в проект новый таргет:
- Перейдите в меню управления таргетами: File → New → Target.
![](/upload/setka_images/09253607082024_b76bc71fa80c20942ed01e19c21ead7b69ad6b89.jpg)
Скриншот: Xcode / Apple Inc.
- Выберите подходящий шаблон для вашего нового таргета. Например, можно выбрать приложение для умных часов Apple Watch (Watch App) или приложение для iPhone (iOS App). Нажмите Next.
![](/upload/setka_images/09253607082024_1c076733da30d01108464d85a8ffad1517acec59.jpg)
Скриншот: Xcode / Apple Inc.
Для каждого таргета надо указать название, идентификатор организации, выбрать язык программирования и настроить параметры связи с основным проектом. Этот процесс похож на создание нового проекта в Xcode.
![](/upload/setka_images/09253607082024_1cc7c7aaff1472b38801633d33e2f9e6221a290f.jpg)
Скриншот: Xcode / Apple Inc.
Что запомнить
- Xcode — это интегрированная среда разработки (IDE) от Apple, которая используется при создании приложений для операционных систем компании.
- Среда разработки доступна только на macOS, поэтому для работы с ней нужен компьютер или ноутбук Mac.
- В Xcode есть всё необходимое для разработки, тестирования, отладки и публикации современных приложений и утилит.
- Xcode может работать с десятком языков программирования, но в основном среду разработки используют для работы со Swift и Objective-C.
Больше интересного про код — в нашем телеграм-канале. Подписывайтесь!