Найти тему

Выбор «железа» и IDE

Оглавление
macOS на различных устройствах
macOS на различных устройствах

На самом деле начать изучать Swift можно и будучи владельцем любого ноутбука/PC и даже смартфона, способного открыть браузер.

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

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

Теперь разберем варианты, которые подходят для разработки проектов под iOS/macOS на Swift в Xcode:

Apple Way

Самый комфортный вариант - это что-то из iMac/MacBook/Mac mini, причем вполне подойдет самый бюджетный миник на M1. Вообще процессоры на M1 показывают впечатляющие результаты по скорости компиляции проектов на Swift.

Hackintosh

Запуск macOS на обычном PC
Запуск macOS на обычном PC

Это ряд проектов, способствующих запуску macOS на совместимом PC. Тут конечно есть свои плюсы и минусы:

  • Можно использовать уже имеющийся PC/ноутбук;
  • Зачастую аналогичное железо, но в корпусе от Apple, стоит дороже;
  • Хак поставится далеко не на каждое железо и работает не с любой видеокартой (например RTX видеокарты до сих пор не поддерживаются и не ясно будет ли вообще такая поддержка).
    Пользователи, которым удалось поставить Хак на свое железо, обычно делятся результатом на форумах типа
    tonymacx86.com. Там же можно поискать готовые сборки EFI раздела, с которого запускается Хак.
    Такие сборки еще выкладывают на GitHub, обычно можно найти в поисковике вбив название своей материнской платы + Hackintosh.
  • Распаянные на плате WiFi и Bluetooth могут не работать.

Виртуализация macOS

Для довольно мощных PC можно запустить macOS прямо в Windows/Linux через виртулку. На выбор VMware (лучше использовать VMware Workstation Player) или VirtualBox.

Плавной работы даже на мощном PC тут ждать не приходится. Хотя, как начальный вариант, вполне сойдет.

Swift это не только maOS

Не стоит забывать, что разработка на Swift не ограничивается одной лишь macOS.

Конечно написать полноценное приложение для iOS на Windows/Linux не выйдет (некоторые фреймворки типа UIKit остаются закрытыми в экосистеме Apple). Но ничто не мешает написать консольную утилиту в Linux, а затем скомпилировать ее в Windows/macOS и использовать там же. Для UI так же можно взять кроссплатформенное решение - Qt.

Поддерживаемые операционные системы
Поддерживаемые операционные системы

А Xcode можно заменить на Visual Studio Code.

Выводы

  • Начать изучать Swift можно вовсе без какого-либо железа, а когда придет понимание для чего конкретно хочется писать приложения на нем - определиться с выбором;
  • Покупать технику Apple так же не обязательно, вполне возможно, что на текущее железо можно поставить Хакинтош или виртуалку. Если нет, то на основе успешных запусков Хакинтоша можно сделать выбор в пользу определенного железа под него;
  • Писать код на Swift можно не только в Xcode - с приходом SourceKit-LSP это можно делать в любимой IDE.