Как написано в блоге Swift и на странице для разработчиков на Swift, новая версия получила более высокую производительность, новое API обработки ошибок, улучшения синтаксиса языка, а также функцию проверки доступности функций Swift для целевых ОС.
На мой взгляд, самое интересное – Apple открывает код Swift. Да, Swift 2.0 — это Open Source язык программирования.
Не силён в лицензиях, но, на сколько понимаю, язык будет открыт под одной из лицензий из списка Open Source Initiative.
На начальном этапе планируется релиз языка под OS X, iOS и Linux, а в исходных кодах будет компилятор и стандартные библиотеки.
Пока я читал обзоры разных интернет-изданий о вчерашней презентации, наткнулся на разные мнения об этой новости. Был комментарий о том, что в целом сообществу будет до лампочки, что язык стал с открытым кодом и до тех пор, пока его не портируют под все возможные среды разработки (в комментарии было написано про Visual Studio), а использовать его начнут в работе крупные корпорации типа Microsoft и Google, особо ничего не изменится.
Встречал еще мнение, что это сильно изменит язык в лучшую сторону и что это большой подарок от Apple.
Ясно одно – открытие кода Swift вновь создаст много споров, как собственно и его появление создало новые темы для холиваров.
На мой взгляд, время покажет, кто окажется прав на самом деле. Тем не менее, интересно услышать мнение хабрапользователей на этот счет.
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Комментарии (25)
NeoCode
09.06.2015 10:08-4Наконец-то!
И смотрите как интересно, крупные корпорации понемногу открывают свой код, все-же open source постепенно побеждает!
sborisov
09.06.2015 10:53+8Objective-C тоже открытый язык, но без закрытой Cocoa — он не имеет смысла, как бы Swift не ждала, прибитая гвоздями к OS X судьба.
NeoCode
09.06.2015 12:38+1Ну у меня интерес хотя-бы поиграться с языком без шаманства с Хакинтошами:) А в данном случае есть шанс что Apple сделает официальный релиз для Linux, это нечто большее чем просто «открытый язык».
sborisov
09.06.2015 12:45+1Вы плохо прочитали мой комментарий, либо просто не поняли.
Компилятор obj-c доступен в gnu gcc. Ставьте и используйте на любой ос.
Проблема в том, что без Cocoa, это практически голый Си.NeoCode
09.06.2015 13:11+1Я про Swift, а не про obj-c. Для «поиграться» достаточно сборки консольных приложений, то что вы назваете «практически голый си». Конечно хотелось бы бОльшего, но даже если будет минимальная конфигурация — меня устроит.
progn
09.06.2015 13:23+1с ObjC проблема в другом, это очень простой язык и малополезный в голом виде, много функциональности сделано в рантайме, Foundation и других фреймворках. Нет даже управления памятью (помимо того что предоставляет Си), она реализована в рамках NSObject из Foundation. Не говоря уже о какой то стандартной библиотеке, контейнеров и т.п.
Swift в голом виде вполне юзабельный язык, есть контейнеры, ввод-выводcreker
09.06.2015 16:22Swift точно так же полностью полагается на рантайм и без него бесполезен. Просто в данном случае помимо компилятора будут открыты и библиотеки со всем добром, в отличие от Obj-C
EvilPartisan
09.06.2015 17:00Надо сказать, что у свифта по сути нет своей стандартной библиотеки. Он может работать со старыми Obj-C, пожет работать с посикс-Си, но все это выглядит довольно костыльно. Как мне кажется, скорее всего Аппле будет пилить новую низкоуровневую свифт-либу с рантаймом под Опен Сурс, доступную везде, и отдельно чисто яблочный фремворк с бекджеком и ГУИ.
Для разработчиков это как минимум удобно для написания мультиплатформерных приложений, если не как основным языком, то покрайней в виде мостика между языками.creker
09.06.2015 18:07В смысле нет? В каждое приложение под swift же сейчас кладется пачка динамических библиотек, где все богатство и реализовано. Вскоре планируется включить это все в iOS, чтобы не тащить с каждым приложением из AppStore
EvilPartisan
09.06.2015 18:11По сути это все костыли к Obj-с либам(мосты для CF, Cocoa и тд) и капельку своего уникального функционала. Я имею ввиду, что нет именно своей родной стандартной библиотеки. Реализован необходимый минимум для основного функционала языка, но нет свой родной полноценной так сказать языковой экосистемы. Но она наверняка в ближайшее время появится.
alexeyknyshev
09.06.2015 12:14-1Ну ладно, просто в любом случае странные варианты ответа:
Всё что ниже «миру не нужен еще один язык программирования» формально пункту «Всем пофиг»
Goodkat
09.06.2015 22:10Вот когда станет открытым, тогда и будет смысл обсуждать.
Джобс вон и Facetime обещал открыть.TerrorDroid
10.06.2015 01:09Проблема с Facetime не в хотелках (или скорее нехотелках) со стороны Apple — там проблемы юридического характера до сих пор (с 2010 года) бушуют, которые в свою очередь вызывают проблемы технического и архитектурного характера. Детали можно прочитать в этой статье.
rule
Swift очень удобный и простой язык, при наличии стандартных библиотек под линукс и компилятора, можно создать веб-фреймворка и писать веб-приложения на нем. Я лично бы очень хотел иметь такой инструмент для веб-приложений.
hardex
Python уже написан.
NightmareZ
Да и не только питон. Поддерживаю, уже предостаточно самых разных языков. А свифт не является чем-то революционным, — те же яйца только в профиль. И, если для мака он ещё как-то в тему, чтобы заменить устаревший ObjC в качестве базового языка платформы, то на линуксе он нафиг не нужен.
progn
ну я бы не отказался от Swift'а на Линуксе, чтобы использовать его как альтернативу Python. Такой же простой и немногословный, но при этом компилируемый язык, с хорошей скоростью, без проблем с многопоточностью. Вопрос в поддержке и либах, готова ли Apple выделять на это деньги, и не будет ли это open source для галочки.
NightmareZ
Есть, например, Go. Чем не вариант? Или Vala.
creker
Swift выглядит как просто велосипед от Apple для своих собственных платформ. За пределами этих платформ язык выглядит довольно странно и, в общем-то, не особо нужен. Да даже на своих платформах — сколько читаю про язык, не появилось и мысли, чтобы слезть с obj-C. Ну нет там просто ничего, что бы меня мотивировало. Тем более он до сих пор не дорос до стабильного состояния.