На прошедшем мероприятии в рамках WWDC 2014 компания Apple сделала поистине шокирующее заявление: объявила выпуск собственного языка программирования Swift, ориентированного на разработку приложений для iOS. Расскажем о нём подробнее.
Swift создан как замена Objective C, долгое время являвшегося стадартом разработки iOS-приложений. Судя по всему, именно на основе Objective C и создан Swift, обещается даже совместимость с оным до определённого уровня.
Итак, небольшая характеристика. Swift — высокоуровневый объектно-ориентированный компилируемый язык, с рядом возможностей функциональных языков (паттерны, кортежи, замыкания и др.). В чём же преимущества по сравнению с Objective C? Apple даёт целый ряд пунктов.
1. Современность.
Являясь результатом последних разработок в программировании в совокупности с многолетним опытом компании, Swift вобрал всё самое лучшее от Objective C. В частности, сам вид кода предполагает высокую читаемость, предполагаемые типы делают код чище и менее предрасположенным к ошибкам, управление памятью происходит автоматически, исключено использование точек с запятой.
2. Безопасность.
Swift исключает ряд «категорий» небезопасного кода. Переменные всегда инициализируются до использования, массивы проверяются на переполнению, память управляется автоматически.
Безопасные паттерны настроены для использования API Cocoa и Cocoa Touch.
3. Скорость.
С высокопроизводительным компилятором LLVM, Swift компилируется в оптимальный машинный код, для получения максимальной производительности на Mac, iPhone и iPad. Кроме того, сам синтаксис кода предполагает использования наиболее оптимальных способов для получения высокой работоспособности.
4. Готовность к использованию
Вы можете использовать как непосредственно возможности Swift, так и расширять его своими. Язык обеспечивает частичную совместимость с Objective C, что позволит легко адаптировать старые файлы. Таким образом, с выходом iOS 8 и OS X Yosemite этой осенью, вы уже сможете порадовать пользователей приложениями, использующими Swift. Это возможно ещё и потому, что IDE Xcode 6 beta уже поддерживает синтаксис этого языка, что сделает разработку лёгкой и приятной.
Таким образом, мы имеем язык, заточенный под конкретные задачи в виде создания приложений под iOS и OS X. Однако скажется ли эта «заточка» на руку, или наоборот, только урежет возможности? Покажет время и мнения разработчиков.