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

Источник: Apple

Планируя постепенно отказываться от устаревающего Objective-C, компания Apple представила новый язык программирования Swift, предназначенный для мобильных устройств, которые будут работать под управлением операционной системы iOS, и компьютеров Macintosh.

Новый, интуитивно понятный язык Apple отличается простотой, характерной для интерпретируемых языков Python и JavaScript, и одновременно обладает высокой скоростью и гибкостью компилируемых языков, ярким представителем которых является C++.

«Swift быстр, современен, предназначен для создания безопасных программ и обладает таким уровнем интерактивности и удобства для разработчиков, которых вы никогда ранее не видели на нашей платформе», — заявил генеральный директор Apple Тим Кук, представивший язык на недавней конференции Worldwide Developers Conference.

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

Многие создатели приложений для устройств Apple с радостью восприняли новость о появлении Swift. Участники WWDC встретили презентацию Кука бурными аплодисментами. Энтузиазм их понятен, если учесть многочисленные недостатки устаревшего Objective-C, который был создан в 80-х годах и пришел в Apple из компании Стива Джобса NeXT. Apple купила NeXT в 1996 году.

Один из разработчиков выразил в Twitter удовлетворение тем, что Swift позволяет использовать эмотиконы — смайлики, представленные в кодировке Unicode, в качестве переменных. Другой выразил свое отношение к происходящему, нарисовав картинку, на которой книга по программированию на Objective-C была выброшена в мусорную корзину.

«Несмотря на то что Apple проводит достойную похвалы работу по поддержке языка и экосистемы для разработчиков, Objective-C во многих случаях оказывается слишком сложен, — указал руководитель исследований средств разработки программного обеспечения компании IDC Эл Хилуа. — Objective-C построен на основе Си — языка программирования, который уже сам по себе непрост. Трудно понять и технологию передачи сообщений Objective-C между приложениями или внутри приложения».

 

«Swift обладает всей мощью Objective-C, но при этом не тащит за собой багажа Си», — сообщил Кук аудитории и привел результаты тестов, согласно которым код Swift выполняется быстрее, чем Python, и почти так же быстро, как Objective-C.

«Наверное, изучить Swift и работать с ним действительно проще, но для того, чтобы переключиться с Objective-C, программистам понадобится какое-то время», — предупредил Хилуа.

В настоящее время компания Apple стремится упростить этот переход. Код Swift может выполняться в той же среде, что и код Objective-C, используя тот же самый модуль управления памятью. Кроме того, предлагаемое решение позволяет обращаться к библиотекам Objective-C Cocoa. «Код Swift может сочетаться в одном приложении рядом с кодом Objective-C и Си», — подчеркнул Кук.

Apple обновит интегрированную среду разработки Xcode, включив туда функцию Playground, которая позволит разработчикам проверять вводимый код прямо в процессе набора текста программы на клавиатуре.

Судя по всему, предложенный Apple язык Swift никак не связан с одноименным языком, который предназначен для написания сценариев, работающих в параллельных вычислительных средах.