Apple Swift обзавелся открытым исходным кодом

Роман Юрьев avatar | 22
FavoriteLoading В закладки
Apple Swift обзавелся открытым исходным кодом

Теперь компания из Купертино считает его языком программирования будущего.

На созданный в Apple Swift у компании большие планы. Вице-президент по разработке ПО Крейг Федериги активно продвигает продукт и акцентирует внимание на том, что теперь Swift — язык программирования с открытым исходным кодом. А это должно способствовать его распространению и популяризации среди разработчиков.

01-2-Swift-Open-Source

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

При этом Федериги не отрицает важности и языка Objective-C, уточняя, что Apple продолжит поддерживать его в дальнейшем. Все-таки она вложила немалые средства в развитие этого языка программирования и отказываться от него не планирует. Но открытый исходный код в Swift должен сделать его более популярным и доступным. При этом те, кто предпочитают Objective-C, ничего не потеряют. Переходить на Swift в принудительном порядке от них Apple не требует.

Открытие исходного кода Swift преследует одну большую цель — распространение и популяризацию этого инструмента, ведь в Apple уверены, что за ним — будущее. Работе со Swift станут обучать в университетах, да и разработчики-любители вполне смогут разобраться с ним самостоятельно.

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

Крейг Федериги для Ars Technica

По словам главы Apple по разработке ПО, открытый исходный код Swift еще и укрепит отношения компании с разработчиками. В Swift 2.0 многие нововведения и изменения были внесены именно с подачи тестировавших язык программирования разработчиков. И в новых условиях сотрудничество это только углубится.

Многие из особенностей Swift 2.0 — это результат исправленных ошибок в предыдущей версии языка. Изменения являются следствием постоянного диалога с создателями программ, которые использовали Swift в своих реальных разработках. Открытый исходный код Swift поможет углубить это взаимодействие.

Крейг Федериги для Ars Technica

Разработчики уже успели оценить преимущества работы со Swift. У энтузиастов даже есть план по превращению его в серверный язык программирования, и именно открытый исходный код Swift должен был стать первым шагом к адаптации его к использованию в новых условиях и в новом формате. [9To5Mac]

1 Звезд2 Звезды3 Звезды4 Звезды5 Звезд (Проголосуйте первым за статью!)
undefined
iPhones.ru
Теперь компания из Купертино считает его языком программирования будущего. На созданный в Apple Swift у компании большие планы. Вице-президент по разработке ПО Крейг Федериги активно продвигает продукт и акцентирует внимание на том, что теперь Swift — язык программирования с открытым исходным кодом. А это должно способствовать его распространению и популяризации среди разработчиков. По мнению руководства...
Прокомментировать

🙈 Комментарии 22

  1. Kiri11 avatar
    Kiri114 декабря 2015
    0

    Кроссплатформенность???

    Kiri11 avatar
    Kiri114 декабря 2015
    0

    @Kiri11, ах, смотрю на Ubuntu можно побилдить, значит успех! https://github.com/apple/swift

    creker avatar
    creker4 декабря 2015
    1

    @Kiri11, ему бы сначала дожить до какого-то рабочего состояния. Достаточно в репозиторий зайти и посмотреть, в каком там состоянии библиотека. Уж не знаю что там с компиляторами и дебаггерами

    yJIeTHblu avatar
    yJIeTHblu4 декабря 2015
    1

    @creker, Потому это язык “будущего” ) хехе

    potatoonair avatar
    potatoonair6 декабря 2015
    0

    @yJIeTHblu, в буквальном смысле слова!!!)

    [scaR] avatar
    [scaR]4 декабря 2015
    0

    @Kiri11, Официально только Ubuntu , где то был PR на FreBSD поддержку, но с комментарием, что могут и откатить. Но стабильность даже под Ubuntu так себе.

  2. Krakazabra avatar
    Krakazabra4 декабря 2015
    1

    Покодите на нем, и вспомните кука по его ориентации :D

  3. apiksDen avatar
    apiksDen4 декабря 2015
    0

    Так где ссылка на открытые исходные коды?
    P.S. ссылка https://swift.org/source-code/

  4. Майор avatar
    Майор4 декабря 2015
    1

    Кто то на нем программирует? Может дать объективную оценку?

    Rezon avatar
    Rezon4 декабря 2015
    3

    @Майор, язык приятный, но, во-первых, ещё не устаканился. За последний год нужно было 3 раза по работе пересобрать проект, в котором есть два класса на свифте. Всего два. И каждый раз проект не собирался, потому что появились какие-то несовместимые изменения. При этом встроенные средства автоматической миграции не спасали, и приходилось тратить по часу времени минимум на ручное исправление всех ошибок. Это в двух файлах.
    Плюс, рантайм у свифта так же ещё не устаканился, а поэтому не является частью системы. Рантайм свифта включается отдельно в каждое приложение, что увеличивает размер на неизвестное мне пока что количество мегабайт. Создайте пустой проект на Objective-C и на Swift, сделайте Archive, сравните, удивитесь :) В релизной версии разница будет не столь значительна, но всё же.
    В общем, на мой взгляд пока рано для использования в реальных проектах.

    Silmaril avatar
    Silmaril5 декабря 2015
    0

    @Rezon, не знаю что там у вас за классы такие, что целый час мигрировать два класса. В пару тысяч строк что толи… Пишу на свифте с прошлого декабря и да были изменения, но не все там так страшно. Вот если хочется чтото отрефакторить в соответствии с новыми возможностями тогда да нужно сидеть и думать как это по лучше сделать. А просто миграция, ну не знаю странно это.

    Rezon avatar
    Rezon5 декабря 2015
    1

    @Silmaril, Виноват, файлов 6. Хотя это не очень сильно что-то меняет. Проблема в том, что при каждом изменении нужно вручную пройти по каждому изменению, разобраться, что там в коде происходит, разобраться, какие есть способы сделать это в новой версии Swift и какой из них выбрать в данном конкретном случае, чтобы код не просто работал, а оставался идеологически правильным. Код не мой.
    Посмотрел сейчас – в последнем коммите в одном файле 25 изменений. В основном работа с optionals (где-то расставить “!”, где-то “?”, где-то преобразование типов). В предыдущем замена NSSet на Set, преобразование типов и optionals. Выйдет Swift 3, и я опять буду сидеть и расставлять по всему коду вопросительные и восклицательные знаки, потому что совместимость опять никто не обещает.
    Это, в общем-то, в стиле Apple, и мне это нравится. Что они готовы пожертвовать совместимостью ради прогресса. Но я лучше подожду снижения темпов развития, чтобы не тратить на гонку за прогрессом столько времени. К тому же, аргумент про размер приложения никто не отменял. У меня есть приложение, которое весит 2.9 мб. Использование Swift увеличит его в несколько раз.

    creker avatar
    creker5 декабря 2015
    0

    “Это, в общем-то, в стиле Apple, и мне это нравится. Что они готовы пожертвовать совместимостью ради прогресса”
    Стиля эпл тут не видно. Они deprecated API тащат до победного как любой другой на их позиции. Просто swift даже с позиции Apple не дошел до стабильного состояния. Как дойдет, так перестанут ломать совместимость. Они это обязаны сделать, если хотят, чтобы у Swift было хорошее будущее. В какой-то момент должна быть поставлена точка – код, который был написан для одной версии, должен компилироваться, в идеале, для всех будущих. Это то, как живет любой зрелый продукт. Если ты что-то включил в спецификации, а потом узнал, что это было ошибкой или вообще там баг есть, то этот баг или архитектурная ошибка становится фичей. Ты можешь городить вокруг костыли, давать новый API, а старый метить deprecated, но ты не можешь просто взять и переделать то, чем пользуются тысячи клиентов.

    Собственно, этим моментом будет включение рантайма в iOS.

    Rezon avatar
    Rezon6 декабря 2015
    1

    @creker, deprecated Apple действительно “тащит” до победного :) Как раз обсуждали это на днях. Но я не об этом. Apple не поддерживает старые системы. Программа, написанная для iOS 7 может внезапно перестать работать на iOS 9. Сравните это с подходом Linux. А когда Вы захотите её отладить, Вы внезапно обнаружите, что симулятор iOS 7 не работает на El Capitan. Ну и плюс Apple гонит пользователей плёткой на новые версии. В результате как раз-таки у разработчиков нет необходимости поддержкивать “фичи” всего зоопарка систем. Достаточно 1-2-3 последних. Ну и Apple в принципе не боятся вносить breaking changes. Как правило, предоставляя в этом случае какой-то механизм миграции, чтобы тысячи клиентов могли адаптироваться под новые реалии. GC, кстати, в итоге ведь выпилили полностью.
    Ну и включение рантайма в iOS будет означать лишь стабилизацию рантайма, но не самого языка.
    Хотя в целом я согласен, и именно эту мысль я и хотел донести в своём сообщении: пока язык не дозрел. Когда-нибудь дозреет. Когда дозреет – можно пользоваться.

    alkal avatar
    alkal4 декабря 2015
    3

    @Майор, отличнейших язык! Не видел чего-либо более удобного и красивого. И это я серьезно! Извращения Obj-C в прошлом.

  5. [scaR] avatar
    [scaR]4 декабря 2015
    0

    Как можно вообще “обзавестись открытым исходным кодом” ?
    Если расскажете, дайте мне 2!

    P.S.
    Код уже был написан когда-то,и судя по несоответствию дат первых коммитов и pull request’ов(request’ы появились только месяц назад,коммиты-2 года назад) , просто его склонировали на github из внутреннего репозитория apple.

  6. Dmitry Dukhov avatar
    Dmitry Dukhov4 декабря 2015
    1

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

  7. Scheisse avatar
    Scheisse4 декабря 2015
    0

    Кодировал и буду кодить под objC… Стриж пугает кучей ошибок в проекте при выходе новой версии и…мать его, кучей “as”…параноидальный подход к типизации. К тому же “!” и “?” прибавляют веселья :-)

  8. Varian avatar
    Varian4 декабря 2015
    0

    Блин почему я нихера не понимаю в этих языках.

    Вроде бы не тупой, но не понимаю что такое open source

    Yuri Sidorov avatar
    Yuri Sidorov5 декабря 2015
    0

    @Varian, Открытый исходный код, т.е. в свободном доступе. Как бесплатные фотографии в общественных стоках.

    Rezon avatar
    Rezon5 декабря 2015
    0

    @Yuri Sidorov, открытый исходный код не обязательно означает, что программа бесплатна. Free speech != free beer.

  9. voice avatar
    voice4 декабря 2015
    0

    Вы сначала Caps lock хотя бы поправьте , а потом рассказывайте о том, что еще далеко не готовый Swift язык будущего.

Вы должны авторизоваться или зарегистрироваться для комментирования.

Нашли орфографическую ошибку в новости?

Выделите ее мышью и нажмите Ctrl+Enter.

Как установить аватар в комментариях?

Ответ вот здесь