The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Компания Apple представила язык программирования Swift 6.0

19.09.2024 14:30

Компания Apple опубликовала релиз языка программирования Swift 6.0. Официальные сборки подготовлены для Linux (Ubuntu 20.04/22.04/24.04, Debian 12, Fedora 39, Amazon Linux 2, RHEL 9), Windows 10 и macOS (Xcode). Исходные тексты распространяются под лицензией Apache 2.0.

Язык Swift сочетает лучшие элементы языков C и Objective-C, и предоставляет объектную модель, совместимую с Objective-C (Swift-код может смешиваться с кодом на С и Objective-C), но отличается использованием средств автоматического распределения памяти, контроля переполнения переменных и массивов, защитой от использования неинициализированных переменных и блокированием доступа к памяти после её освобождения, что значительно увеличивает надёжность и безопасность кода. Swift также предлагает множество современных методов программирования, таких как замыкания, обобщённое программирование, лямбда-выражения, кортежи и словарные типы, быстрые операции над коллекциями, элементы функционального программирования.

Pеализация Swift построена с задействованием технологий свободного проекта LLVM. Для обеспечения высокой производительности Swift-программы компилируются в машинный код, который в проведённых тестах демонстрирует производительность на 30% опережающую код на Objective-C. Вместо сборщика мусора в Swift используются средства подсчёта ссылок на объекты. В поставку входит пакетный менеджер Swift Package Manager, предоставляющий инструменты для распространения модулей и пакетов с библиотеками и приложениями на языке Swift, управления зависимостями, автоматизированной загрузки, сборки и связывания компонентов.

Ключевые изменения в новой версии:

  • Добавлен новый режим изоляции данных, предоставляющий на уровне компилятора защиту от состояний гонки, возникающих при обращении к данным из параллельно выполняемых потоков. При включении режима компилятор выполняет проверку безопасного использования или наличия должных блокировок данных, обрабатываемых параллельно выполняемым кодом.
  • Предложен экспериментальный урезанный вариант языка Embedded Swift, предназначенный для создания приложений для встраиваемых систем и микроконтроллеров. В компиляторе сборка в новом режиме реализована для целевых платформ ARM и RISC-V, и позволяет генерировать более компактные, потребляющие меньше памяти и обособленные исполняемые файлы, не привязанные к runtime.
  • Предложена новая библиотека Synchronization, предоставляющая низкоуровневый API для организации параллельного выполнения кода, атомарного выполнения операций и использования мьютексов.
  • Добавлена поддержка типизированных исключений (Typed throws), дающих возможность указать тип возвращаемой ошибки на этапе определения функции. Например, ниже показано определение функции, которая либо возвращает экземпляр Record либо ошибку с типом ParseError:
    
       func parseRecord(from string: String) throws(ParseError) -> Record { 
         // ... 
       }
    
  • Предоставлена возможность использования обобщённого кода (generic), который может одновременно работать как с копируемыми, так и с некопируемыми типами (некопируемые типы могут иметь только одного владельца, что позволяет добиться увеличения производительности за счёт замены связанных с владением проверок на запрет копирования ресурсов).
  • Расширена переносимость с кодом на языке C++ в таких областях, как типы, допускающие только перемещение, виртуальные методы, аргументы по умолчанию и дополнительные типы стандартной библиотеки (например, std::map и std::optional).
  • Реализованы знаковые и беззнаковые 128-разрядные целые типы.
  • Библиотека Foundation унифицирована для всех поддерживаемых платформ (Linux, Windows, macOS) и может применяться в переносимых приложениях. На языке Swift переписаны реализации типов JSONDecoder, URL, Calendar, FileManager и ProcessInfo.
  • Добавлена новая библиотека Swift Testing, предоставляющая API для написания и выполнения тестов.
  • Значительно расширена поддержка платформ Linux и Windows. Добавлена возможность сборки полностью статически связываемых исполняемых файлов для Linux, не использующих внешние зависимости (реализован static SDK для Linux). Обеспечено тестирование в Debian, Fedora и Ubuntu 24.04.


  1. Главная ссылка к новости (https://www.swift.org/blog/ann...)
  2. OpenNews: Apple выпустил язык программирования Swift 5.3 и открыл код библиотеки Swift System
  3. OpenNews: Для продолжения разработки браузера Ladybird решено использовать язык Swift
  4. OpenNews: Создатель LLVM и Swift уходит из компании Apple
  5. OpenNews: Компания Apple открыла реализацию языка Swift и реализовала поддержку Linux
  6. OpenNews: Компания Apple представила язык программирования Swift, основанный на LLVM
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/61890-swift
Ключевые слова: swift, apple
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (149) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 15:28, 19/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Отличный язык, на него скоро начнут переписывать Ladybird!
    https://www.opennet.ru/opennews/art.shtml?num=61685
     
     
  • 2.125, Аноним (-), 02:28, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Отличный язык, на него скоро начнут переписывать Ladybird!
    > https://www.opennet.ru/opennews/art.shtml?num=61685

    После чего он превратится, увы, в ladybug!

     
     
  • 3.127, Аноним (127), 03:37, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Скорее ladyleak.
     
     
  • 4.160, Аноним (160), 15:28, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Неф, Swift - это memory safe язык.
     
     
  • 5.168, _kp (ok), 18:43, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ещё Swift, это типа как C++ ни минималках, но с простотой изучения как у Паскаля.

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

     

  • 1.3, Чуркашов захохлист (?), 15:37, 19/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    Кто-то вообще пробовал это юзать за пределами яблочной экосистемы?
     
     
  • 2.6, Аноним (6), 15:38, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +16 +/
    Поговоривают что никто никогда не пробовал.
     
  • 2.11, Аноним (11), 15:53, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну тот же самый браузер Arc написан на свифте
     
     
  • 3.16, Аноним (16), 16:02, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +17 +/
    А кто слышал про этот "тот же самый" Arc ?
     
     
  • 4.20, Минона (ok), 16:06, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Кто-то слышал.
     
  • 4.170, _kp (ok), 18:52, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > А кто слышал про этот "тот же самый" Arc ?

    Посмотрел. Ничего интересного, обычный chromium-based браузер, но с анальной учетной записью.
    Если нравится, как есть, то хвалят, иначе выкидывают.

     
  • 3.29, Аноним (29), 16:20, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Движок там всё равно Chromium.
     
     
  • 4.43, Аноним (43), 16:50, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ледибёрд единственный нормальный двиг.
     
  • 2.46, Аноним (46), 16:56, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ни в коем случае
     
  • 2.119, Василий (??), 21:42, 19/09/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.132, Аноним (132), 08:23, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    И в пределах тоже нет. Пишу для macOS на C++ под Qt (точнее, просто собираю кроссплатформенную сборку для нее). Буду информировать об успехах.
     
     
  • 3.147, Аноним (147), 11:55, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Для себя вы можете и на турбо паскале писать. Вопрос товарищ задал про коммерческую разработку в команде, за которую платят деньги.
     
     
  • 4.161, Аноним (161), 15:32, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Про коммерческую разработку в вопросе ничего не упоминалось, не додумывай отсебятину.
     
  • 3.180, _kp (ok), 19:03, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Пишу для macOS на C++ под Qt

    Для пользователя лучше вместо "универсального горшка, с ручкой вовнутрь" делать нативный интерфейс под каждую поддерживаемую ОС.

    А кроссплатформенное на QT, это типа временного решения, или штучных проектов, хотя, и вполне рабочий вариант.
    Спасибо что не Яве, а то это тоже кроссплатформенно.


     
     
  • 4.192, Аноним (192), 22:29, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Для пользователя лучше вместо "универсального горшка, с ручкой вовнутрь" делать нативный интерфейс под каждую поддерживаемую ОС.
    >
    > А кроссплатформенное на QT, это типа временного решения, или штучных проектов, хотя, и вполне рабочий вариант.
    >Спасибо что не Яве, а то это тоже кроссплатформенно.

    То что Qt значительно хуже натива - весьма спорное утверждение, но в любом случае никого не волнует что там лучше для пользователя, бизнес не будет тратить N денег на разработку N приложений под разные платформы. Поэтому ничего серьёзного ни на каких свифтах писать не будут. На react native или qt - да.

     
  • 2.138, mos87 (ok), 09:12, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А он сам по себе нахрен не нужОн без "экосистемы". Не, если рантайм под ОС есть - работать прога будет, но речь-то о разработке.

    Основной смысл таких вещей в том что это +\- стандарт для той или иной платформы. Даже не в фишках языка.

    Но на Линуксах только фрагментация. Это просто ещё один фрагмент среди десятков (более распространённых к тому же).

     
  • 2.153, Шарпей (ok), 13:56, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    tsoding пробовал на стриме (запись есть на ютубе). Резюмировал, что сам язык весьма годный, но тулчейн отвратительный.
     
  • 2.195, Аноним (195), 22:35, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Для телеграм.
     

  • 1.4, Аноним (6), 15:37, 19/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    На свифте пока что написан единственный нормальный альтернативный браузер.
     
     
  • 2.39, Аноним (39), 16:43, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Safari на C++
    https://en.wikipedia.org/wiki/Safari_(web_browser)
     
  • 2.84, Аноним (29), 18:38, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Но Arc это Chromium...
     

  • 1.5, Аноним (5), 15:38, 19/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Пока он не использует GPL, всегда есть риски закрытия исходного кода, и уже не очень опен-сорсный язык будет.
     
     
  • 2.10, YetAnotherOnanym (ok), 15:48, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Автор с маузером и в кожаной куртке будет обходить всех, кто скачал исходники, и переносить тарболлы к себе на флэшку?
     
     
  • 3.21, Аноним (16), 16:07, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну не будет обходить и что дальше? Будут у вас на флешке протухшие исходники, не соответствующие текущему веянию "стандарта" языка.
     
     
  • 4.26, Анонимусс (-), 16:14, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Будут у вас на флешке протухшие исходники

    Ну так и собирай их протухшим компилятором, в чем проблема?
    Ты ж понимаешь, что любой открытый проект может исчезнуть аналогично?
    Вот завтра выйдет глава комитета гцц и скажет "следующего не будет". И всё.
    А то, что кто-то его форкнет и сам будет писать... так это и со свифтом можно сделать, благо все исходники есть.

     
     
  • 5.31, Аноним (16), 16:23, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >глава комитета гцц

    Это ещё что за комитет такой? Есть комитет по стандартизациия языка C, комитет по C++. А GCC только реализует стандарты, разработанные языковыми комитетами.

     
     
  • 6.34, Анонимусс (-), 16:34, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Это ещё что за комитет такой?

    Вот эти люди - official GNU maintainer for GCC
    gcc.gnu.org/steering.html

    Скажут "я устал, я мухожук, дальше как-нибудь сами"

     
     
  • 7.97, Аноним (16), 19:36, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Выбирут нового и продолжат. Гдавное, на стороне не найти какого-либо интересующегося шаманизмом.
     
     
  • 8.120, bOOster (ok), 21:53, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Никто ничего не продолжит Форкнут и все заново ... текст свёрнут, показать
     
     
  • 9.183, _kp (ok), 19:07, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Языки программирования не форкают, что бы просто переписать, а каждый изобретает... текст свёрнут, показать
     
  • 3.32, Аноним (192), 16:28, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Пора повзрослеть уже и перестать перескаывать мантру про то что никто доступа к исходникам не забирает. Исходники - это ничто, никому свободная гнилая версия опроприетарившегося проекта будет не нужна, когда вся экосистема уйдёт вслед за эпплом.
     
  • 2.17, Аноним (16), 16:04, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Да пока не появится фроненд Swift для GCC, вообще не стоит им заморачиваться.
     
  • 2.30, Аноним (30), 16:20, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Старую версию тоже отберут?
    Или ее всегда может развивать сообщество.

    Тут лицензия наоборот круто, не может быть ситуации как с выходом новой версии GPL по которой все что скомпилялось должно было тоже заражаться ею.
    Даже пришлось городить костыли из GCC Runtime Library Exception.

     
     
  • 3.33, Аноним (16), 16:28, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    И что толку, если эталонная реализация будет закрыта, спецификации языка публиковаться не будут? Ну будет развивать несовместимый диалект, который не будет компилять исходники, написанные для компиляния закрытым компилятором.
     
     
  • 4.35, Анонимусс (-), 16:38, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > И что толку, если эталонная реализация будет закрыта, спецификации языка публиковаться не будут?

    Значит то что было переименуют в gnift и будут развивать сами.

    > Ну будет развивать несовместимый диалект, который не будет компилять исходники,
    > написанные для компиляния закрытым компилятором.

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

     
     
  • 5.38, Аноним (43), 16:41, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Про Флеш тоже так говорили. Но нормальной опенсорс версии ActionScript никто сделать не смог.
     
     
  • 6.63, Аноним (-), 17:33, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А разве у флеша исходники были открыты хоть когда-то?
    Они даже спецификации давали, только под NDA. Так что сравнение так себе.
    И тем не менее открыты проигрыватели существовали.
    И даже эмулятор для игр появился - Ruffle.
     
     
  • 7.162, Аноним (161), 15:36, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Только он все еще in development и не обеспечивает полную совместимость.
     
     
  • 8.171, qrKot (?), 18:53, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Вероятно, потому что нафиг никому не нужен ... текст свёрнут, показать
     
  • 8.179, Аноним (179), 19:01, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Тем не менее он уже поддерживает десятки тысяч игр и анимаций В базе flashpoint... текст свёрнут, показать
     
  • 3.193, Аноним (192), 22:31, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Старую версию тоже отберут?

    Нет, она просто протухнет и станет бесполезной.

    > Или ее всегда может развивать сообщество.

    Рассказывайте сказки.

     
  • 2.117, Аноним (117), 21:29, 19/09/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.126, Аноним (126), 02:34, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Пока он не использует GPL, всегда есть риски закрытия исходного кода, и уже не очень опен-сорсный язык будет.

    Лицензии не меняются ретроактивно, если вышел свифт 6 на апач лицензии, то не только существовать эта версия будет всегда, но и лицензия официально разрешает код распространять и форкать.

    Другое дело, что свифт без большого яблока за ним никому не нужен будет и даром.

     
     
  • 3.172, qrKot (?), 18:54, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Справедливости ради, он и при наличии погрызенного яблока никому, кроме собственно яблока, даром не нужен...
     
  • 2.135, Илья (??), 08:47, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > есть риски закрытия исходного кода

    Swift это по сути синтаксический сахар над ObjectiveС, который кроме эппл нигде не используется. Синтаксис у ObjectiveC специфичный, и он уже один раз проиграл конкуренцию с C++.

    Кросс-платформенных графических приложений на SWIFT не напишешь. Да и пользовательские приложения давно не выгодно писать отдельно для MAC/IOS, а заменить чем-то кроссплатформенным (FLUTTER, MAUI, ELECTRON)

    Бек тоже занят давно дотнетчиками, джавистами и прочее.


     
     
  • 3.148, Аноним (147), 12:01, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Кросс-платформенных графических приложений на SWIFT не напишешь.

    Можно подумать, что нативно напишешь на чем-то другом, кроме как на С++? Костыли же (т.н. биндинги) есть для любого языка.

     
  • 3.149, Аноним (147), 12:03, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > FLUTTER, MAUI, ELECTRON

    А вот за ЭТО нужно гнать из разработки и кастрировать (без преувеличения).

     
     
  • 4.173, qrKot (?), 18:55, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    чем Flutter-то не угодил?
     
     
  • 5.185, btrfs (?), 19:32, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Да не шарит товарищ. Электрон с флаттером в одну кучу.
     
  • 3.151, Аноним324 (ok), 12:37, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Да и пользовательские приложения давно не выгодно писать отдельно для MAC/IOS

    В каком месте это не выгодно? Айфон самый популярный смартфон в мире, даже создавая приложения исключительно под IOS можно жить годами, ибо один эпл стор генерирует в 10 раз больше денег, чем гугл плей и майкрософт стор вместе взятые.

     
     
  • 4.163, Аноним (161), 15:39, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >Айфон самый популярный смартфон в мире

    Давно уже нет.

    >один эпл стор генерирует в 10 раз больше денег

    Только эти деньги уходят приложениям из топ-100, а остальные работают за надежду.

     
  • 4.174, qrKot (?), 18:56, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >> В каком месте это не выгодно?

    В месте, когда кроссплатформенное приложение нужно, а лишних миллиардов нет?

     
     
  • 5.190, Аноним324 (ok), 21:19, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >>> В каком месте это не выгодно?
    > В месте, когда кроссплатформенное приложение нужно, а лишних миллиардов нет?

    А в чём проблема в мире где рулит клиент-серверная модель приложений натянуть на общий бекенд, нативный для каждой отдельной платформы фронт. Бизнес логика не меняется.

     
  • 3.167, Ruslan (??), 16:44, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Swift такой же синтаксический сахар над Objective-C, как С++ над Turbo Pascal. Это совершенно разные языки. Из общего у них только Эппл и подсчёт ссылок.
     

     ....большая нить свёрнута, показать (32)

  • 1.7, Ося Бендер (?), 15:42, 19/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    Явно не хватает сабжа в ядре Линукс.
    Раст ему проигрывает в удобстве и простоте.
     
     
  • 2.8, Аноним (6), 15:46, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Тут дело в другом. Гугл захотели свой язык для своих мобилок сделали дарт и флюттер. Эпл захотели свой язык для мобилок сделали Свифт. Потом обе решили что надо своим языкам ещё применение найти и никто ничего не нашел потому что жёстко подконтрольный одной фирме язык никому из нормальных людей ненужОн.
     
     
  • 3.14, Анониматор (?), 15:59, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    JavaScript с тобой не согласен
     
     
  • 4.22, Аноним (22), 16:09, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Джаваскипт никому не принадлежит. Это стандарт который каждый реализует как хочет.
     
     
  • 5.41, Аноним (41), 16:49, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    ECMAScript
     
     
  • 6.50, Аноним (50), 17:02, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Язык принадлежит языку? Табы принимаешь?
     
     
  • 7.122, Аноним (122), 23:11, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я на пробелах
     
  • 5.74, Аноним (74), 17:53, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • –3 +/
    все что со словом "java" все еще принадлежит Ораклу. Поэтому все шифруются как jsscript или ecmascript
     
     
  • 6.112, Аноним (112), 20:57, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И остров тоже им принадлежит? Ты больной чтоли такой бред писать?
     
     
  • 7.121, Sadok (ok), 23:08, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    и моцоцыкл
     
     
  • 8.124, Аноним (124), 02:14, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И сигареты ... текст свёрнут, показать
     
  • 8.130, Аноним (130), 05:10, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Мотоцикл был всё же JAWA, не докопаешься ... текст свёрнут, показать
     
     
  • 9.146, Аноним (16), 11:37, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Наверное, китайцы чехам ребрендинг сделали ... текст свёрнут, показать
     
  • 5.188, Анонус (?), 20:24, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Несколько тысяч разработчиков ПО призвали Oracle в интересах сообщества отказаться от якобы ненужного ей товарного знака JavaScript – под этим названием развивается один из самых популярных языков программирования в мире. Прядущая попытка достучаться до американской мегакорпорации не увенчалась успехом, поэтому на одни только щедрость и доброту Oracle авторы инициативы больше не надеются. Давно обозначившуюся проблему планируют решать через патентное ведомство США с привлечением юристов.
     
  • 4.25, Аноним (16), 16:12, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    И кому он единолично подконтролен?
     
  • 3.27, Аноним (16), 16:14, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Dart
    > Swift

    Решение найдено! Надо объединить фишки обоих, разработав третий.

     
     
  • 4.177, qrKot (?), 18:58, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Чтобы потом написать четвертый, объединив фишки первых трех?)
     
  • 3.69, Аноним (69), 17:40, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Эпл захотели свой язык для мобилок сделали Свифт.

    Кто тебе такое сказал? Нет, его делали как приемника Objective-C.

     
  • 3.169, btrfs (?), 18:50, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Потому что флаттер, как фреймворк, хорош. Дарт, как язык, полная противоположность. Ошибки типов, которые по идее должен ловить компилятор, ловишь в рантайм. Хотя, может быть, после великого и ужасного такое впечатление.
     
  • 2.176, qrKot (?), 18:57, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >> Явно не хватает сабжа в ядре Линукс.

    Толсто!

     

  • 1.18, nc (ok), 16:05, 19/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А есть ли какая-то среда разработки чтобы потыкать язык без макоси (под линуксом или виндой)? Понятно что можно и из консоли, но в ide интереснее.
     
     
  • 2.23, Аноним (22), 16:10, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Вскоде
     
  • 2.24, Анонимусс (-), 16:11, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Проще всего vscode
    swift.org/documentation/articles/getting-started-with-vscode-swift.html

    Или Visual Studio, если на винде
    github.com/pwsacademy/swift-setup/blob/main/platforms/windows/README.md

     
  • 2.44, Аноним (44), 16:50, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Когда мне надо было написать клиентскую либу для яблочников, я писал её под линуксом в CLion со Swift-плагином. Бинари компилятора-девтулзов брал с AUR, не знаю, как сейчас, тогда работало.
     
     
  • 3.45, Аноним (44), 16:55, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Кстати, довольно быстро изучил язык, за пару дней. Если не углубляться в эппловские UI (а мне это и нафиг не надо было, я писал клиентскую либу и простейший консольный клиент в качестве PoC), всё очень наглядно и просто. Язык в целом понравился, приятнее всяких Golang и прочих Rust, только всякие ObjC compat-ы всю красоту портят местами.
     
     
  • 4.52, Аноним (50), 17:05, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Попробуй Dart учится за час. Flutter можешь не изучать.
     
     
  • 5.60, Аноним (44), 17:29, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Dart нормальный, но вне Flutter непонятно, что на нём писать. Если только just for fun.
     
     
  • 6.70, Аноним (70), 17:45, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    https://serverpod.dev/ - вот тут ухитряются на нем бэкенд делать
     
  • 2.142, Андрей (??), 10:13, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Свежий Qt Creator с lsp для свифта, сейчас QC по сути для любого языка по такой схеме можно использовать, хотя основные для QC очевидно это C++, Python
     
  • 2.178, qrKot (?), 18:59, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    AppCode же целый есть
     
     
  • 3.199, yurikoles (ok), 03:48, 21/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >без макоси
    >AppCode

    Во-первых, он был только под macOS, а во-вторых он уже умер, так и не взлетев.

     

  • 1.47, Аноним (-), 16:58, 19/09/2024 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     
  • 1.48, Аноним (46), 17:00, 19/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Этот язык может быть интересен только если у вас проект на objc написан. Это по сути к нему синтаксический сахар

    Но за пределами аппле вряд-ли кто-то будет на нём писать. Есть же C#, GO

     
     
  • 2.53, kkkj (?), 17:08, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Он ближе  к С++/Rust чем ко всяким гоу и тем более шарпам. Но да, пока apple не откроет, UI-ки,  а такое никогда не случится, то будет жить только в яблочной инфраструктуре, хотя есть еще можно сайт заколхозить vapor.codes
     
     
  • 3.62, Аноним (44), 17:31, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Яблочный UI мне в принципе неинтересен, а вот в качестве языка общего назначения мне Swift в процессе знакомства в принципе понравился. Жаль, что он таким языком не станет.
     
  • 3.108, Gemini (??), 20:38, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Пишите для линукса, была же уже новость, что https://www.swift.org/blog/adwaita-swift/
     
     
  • 4.116, Аноним (116), 21:27, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Только ничего так и не написали.
     
  • 2.54, Аноним (-), 17:10, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Этот язык может быть интересен только если у вас проект на objc написан. Это по сути к нему синтаксический сахар

    Ээээ? Ты уверен?
    Там куча всего нового, включая фоундайшн
    github.com/apple/swift-foundation - Swift 69.0%

    > Но за пределами аппле вряд-ли кто-то будет на нём писать. Есть же C#, GO

    Думаю пригодится тем, кто начинал с яблочной, а теперь хочет мультиплатформу.
    Т.к практически любой приложение должно быть и на яблоке и на винде.
    Ну и поддержка андроида тоже добавит конкурентности.

     
     
  • 3.58, Аноним (58), 17:20, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Мобилки - это UI. А значит сразу проще на C# и MAUI.NET - сразу и под Винду и под макось...
     
     
  • 4.67, Аноним (67), 17:37, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    qml
     
  • 4.68, Аноним (-), 17:37, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Да и нет.
    Есть подходы разные.
    Кто-то делает UI на чем-то кроссплатформенном.
    А кто-то пишет ядро и UI делает нативный.
    Есть плюсы и минусы у каждого из подходов.
     
  • 4.73, kkkj (?), 17:50, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Сразу видно под мобилки никогда не писали, ничего лучше нативного нет и не будет, так что в любом случае нужен и swift и kotlin, а на кросплафторме можно только одностраничное приложение для сельского туалета написать, так чтобы это не вызывало тошноты и у разработчиков и у QA.
     
  • 4.78, Аноним (147), 18:23, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > MAUI.NET

    Это тот, у которого хеллоуврот занимает почти гигабайт исходников? И я не преувеличиваю цифру. Помнится во времена 3 андроида нужно было всего 2 текстовых файлика для такого же приложения.

     
  • 2.57, Аноним (58), 17:17, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    К сожалению Apple опоздали: сразу надо было делать кроссплатформенно. Смотри - и вместо раста взяли бы его в ядро. Сразу куча новых разработчиков. А так: упустили свой шанс из-за своей "политики".
     
     
  • 3.61, Аноним (61), 17:30, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Свифт слишком тормозён чтобы что-то заменить.
     
     
  • 4.65, Аноним (44), 17:35, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    В языке там нечему тормозить. Тормозят эппловские либы, язык тут не виноват.

    Как язык без GC и без выносящих мозги borrow checker-ов - такой, "практический" - он в принципе очень даже неплох, и наверное единственный в своей категории среди более-менее популярных и поддерживаемых крупным бизнесом.

     
     
  • 5.71, Анонимусс (-), 17:49, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Язык то без GC, но сам arc штука не супербыстрая.
    Там есть чему тормозить, просто не нужно на нем писать то, что сильно тормозит.

    С другой стороны всегда можно расчехлить UnsafeBufferPointer и прочие Unsafe если слишком нужно.

     
  • 5.79, Аноним (79), 18:23, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Swift по скорости на уровне джаваскрипт https://www.opennet.ru/opennews/art.shtml?num=51475 итак во всем.
     
     
  • 6.164, Аноним (161), 15:47, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Судить о скорости языка по одному криво написанному тесту? Там же в комментариях показали как его нужно переписать чтобы скорость была на уровне.
     
  • 5.103, Аноним (103), 20:00, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >Как язык без GC и без выносящих мозги borrow checker-ов

    Зачем нужен очередной язык без GC на счётчике ссылок? Что за фобия GC?

     
     
  • 6.194, Аноним (192), 22:34, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Что за фобия GC?

    Вы знаете что такое GC и не знаете его минусов, из-за которых он ни для каких серьёзных применений не годится?

     
  • 3.72, Аноним (-), 17:50, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ты думаешь?
    У них была цель - заменить ОБЖ-с на новый более удобный язык.
    Они ее ИМХО достигли.

    Остальное, всякая кроссплатформенность, открытость, сообщество и т.д. это все дополнительные бонусы.
    Например, чтобы разработчики приложений, еще и помогали в портировании на другие платформы.

     
  • 3.181, qrKot (?), 19:04, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Swift в ядро? Отсыпь
     

  • 1.77, Алексей (??), 18:22, 19/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отличный язык, вне эко системы эпла распространен мало, как пример на нем пишут бек.

    https://vapor.codes
    https://www.kitura.dev

     
     
  • 2.80, Аноним (79), 18:26, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Последний уже два года как заброшен.  
     
  • 2.98, Аноним (16), 19:41, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну надо бы по традиции и ядро замутить, Swiftox какой-нибудь.
     
  • 2.123, пп (?), 00:16, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    отличный разъем лайтнинг (геометрия деталей просто надежнее), только они его запатентовали и запретили всем остальным, а теперь им самим запретили отличный разъем использовать, даже если то что придумает эпл будет объективно лучше, держаться от этого надо подальше.

     
  • 2.182, qrKot (?), 19:05, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ну ок, пишут бек. А в чем смысл? Выигрыш относительно Java/Go/C# какой?
     

  • 1.81, Аноним (103), 18:32, 19/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Ужасающе плохой язык. Программа даже не на сто строк может собираться часами. https://habr.com/ru/articles/283106/
     
     
  • 2.82, Аноним (147), 18:36, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Это не проблема языка, это проблема фреймворков и их 100500 инклюдов, надстроек и прослоек.
     
     
  • 3.99, Аноним (103), 19:47, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Месье не читатель, месье - писатель? Проблемы начинаются менее чем на ста строках. Это чуть больше hello world-а.
     
     
  • 4.104, Русская ядерка (?), 20:05, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Проблемы начинаются менее чем на ста строках.

    У тебя одна строка может быть, но перед ней 1000 инклудов через конфигурационные файлы. П.с. мсье пишется без "е".

     
     
  • 5.110, Аноним (103), 20:54, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • –3 +/
    И где здесь 1000 инклюдов let myCompany employees employee... большой текст свёрнут, показать
     
  • 2.91, Анонимусс (-), 19:23, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > habr.com/ru/articles/283106/
    > 7 мая 2016 в 11:35

    Эта информация чуток устарела.
    У свифта бывают затыки нарп. с выводом типов, но такого как там описано нет уже давненько.
    С другой стороны ты всегда можешь прописать типы явно и облегчить работу компилятору.

    Кроме того, как минимум в xcode есть профайлер компиляции и ты может посмотреть где тормоза и или исправить самому, или зарепортить и проблему исправят, чаще всего в след. релизе.

     
     
  • 3.101, Аноним (103), 19:57, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • –3 +/
    >Эта информация чуток устарела.

    Вот более новая статья 7 фев 2019 в 02:03 https://habr.com/ru/articles/439290/
    >У свифта бывают затыки нарп. с выводом типов

    Значит проблема по прежнему актуальна, возможно даже в прежнем масштабе. Вот, в примере из статьи, шесть строк кода собираются 12 секунд.
    >Кроме того, как минимум в xcode

    Спасибо, проприетарниенько.
    >или зарепортить и проблему исправят

    Я не думаю, что язык с такими проблемами нужно чинить, я думаю, что язык с такими проблемами нужно выводить из обращения. Apple, с его масштабами, вполне могли бы взять уже существующий Ocaml или даже с нуля собрать что-то на основе SML, но вместо этого получился язык, который можно затормозить буквально десятком строк.

     
     
  • 4.129, Аноним (130), 05:08, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Вот более новая статья 7 фев 2019
    > новая статья
    > 2019
     
     
  • 5.175, Аноним (103), 18:56, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Вам нужно каждый год публиковать?
     
  • 5.187, Аноним (103), 19:59, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Разумеется, фанат огрызка не признает, что фирма огрызков производит ужасные вещи. Вот вам ещё более новое обсуждение. https://news.ycombinator.com/item?id=36124025 И да, если за всчера не было вопроса о скорости компиляции свифта, это не значит, что огрызко наконец-то его починил
     

  • 1.83, голос из леса (?), 18:37, 19/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Судя по новости они решили по плюшкам догнать гошку.

    Поздно мучить дохлую кошку. Ни вакансии толком, ни сообщества, ни нормальной лицензии. Так и помрет потихоньку.

     
     
  • 2.89, Аноним (147), 18:48, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > лицензии

    Это последнее что должно интересовать кого-либо.

     
     
  • 3.93, Аноним (16), 19:29, 19/09/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Не в мире, где правят деньги.
     
     
  • 4.156, Аноним (156), 14:56, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    То есть реальном мире. В мире розовых пони разработчики питаются манкой, которая падает с небка и живут под листом лопуха.
     
  • 3.184, qrKot (?), 19:08, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Это вас не интересует ровно до тех пор, пока вы пишете какой-то пет-проджект, нужный 3,5 калекам
     

  • 1.113, Аноним (113), 20:57, 19/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Без продукции аппле, писать на этом языке невозможно. То есть, аппле хотят, чтобы только избранные программисты пользовались их творением? Наверняка, фанаты линукса и по совместительству программисты послали этот свифт куда подальше? Или нет?
     
  • 1.114, Аноним (-), 21:14, 19/09/2024 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     
  • 1.133, Аноним (132), 08:28, 20/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Официальные сборки подготовлены для Linux ..., Windows 10 и macOS (Xcode).

    Сначала залочить всю свою технику и ПО на себя, обидеть независимых разработчиков, потом пытаться исправить репутацию ... Ну успехов им. Будем наблюдать. Только наблюдать.

     
     
  • 2.134, Аноним (130), 08:29, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А что там с независимыми разработчиками?
     
     
  • 3.144, Аноним (116), 11:14, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Их обидела эпл
     
  • 2.165, Аноним (161), 15:57, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ничего, еврокомиссия со всем разберется. Лишние деньги в бюджете ЕС им не помешают.
     

  • 1.137, Аноним (137), 08:55, 20/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Swift самый кайфовый язык по синтаксису из всех современных ЯП. Там реально во всём идеальный баланс. После него писать на том же Go - боль. Жаль что вне яббла свифт пока что очень мало применим
     
     
  • 2.145, Аноним (116), 11:15, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Это только для обжектив Си правда. Свифт лучше объектив Си и всё.
     
  • 2.198, 123 (??), 00:54, 21/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Vlang лучше. и быстрее собирает
     

  • 1.150, Аноним (150), 12:21, 20/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Swift также предлагает множество современных методов программирования, таких как замыкания, обобщённое программирование, лямбда-выражения

    Современных... facepalm Алонсо Черч перевернулся

     
  • 1.152, Аноним (152), 13:52, 20/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Напомнило.
    Вам нужно убить дракона с помощью Swift. У вас есть класс NSDragon, но вам нужно написать 500 расширений, чтобы обеспечить убиваемость.
    Когда вы почти закончили, Apple выпускает нового дракона.
     
     
  • 2.159, Аноним (44), 15:24, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Расширения - это такой способ привтащить динамичность ObjC в язык, чтобы была интероперабельность.

    По сути, это причесанный манкипатчинг.

    Не надо это тащить вне совместимость с Эппловскими штуками. Вообще не надо. Это антипаттерн.

     

  • 1.154, Аноним (154), 14:40, 20/09/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Язык сам по себе погоды не делает.
    Распространненность, количество написанных библиотек, фреймворков, поддержка и т.п. и т.д.
    А так .. неуловимый Джо, который нахрен никому не нужен.
     
     
  • 2.155, Аноним (-), 14:47, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Язык сам по себе погоды не делает.
    > Распространненность, количество написанных библиотек, фреймворков, поддержка и т.п. и т.д.

    Свичт стыкуется с сишными либами.
    Так что можешь считать что можно использовать все сишные библиотеки.

    > А так .. неуловимый Джо, который нахрен никому не нужен.

    Посмотри на объем рынка приложений для ios))

     
     
  • 3.166, Аноним (161), 16:01, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не, ты посмотри на объем рынка Swift вне iOS. Это его будущее если Apple откажется от него, прецедент чему уже кстати был. А внутри iOS будешь писать на чем велено, захотят и на BF будешь писать.
     
     
  • 4.186, Аноним (-), 19:45, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > прецедент чему уже кстати был

    Это ты про обжси?
    Хаха, слава богу что его закопали. У него просто море родовых травм унаследованных от сишки.
    Плюс сам процесс отказа проходит очень медленно, больше десяти лет.
    При этом на распоследнем xcode 16.1 обжси все так же продолжает нормально компилироваться (у нас еще нехилый кусок кодов на нем остался). И никто не заставляет его выкидывать, никто его не забирает, удаляет и тд.
    Просто все новое пишется на свифте.

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

    > А внутри iOS будешь писать на чем велено

    UI - да. А логику - на чем хочешь. Хоть на с++.

     
  • 4.196, Аноним (192), 22:39, 20/09/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Не, ты посмотри на объем рынка Swift вне iOS

    Открою секрет - у него и внутри iOS объём рынка весьма скромный. Даже натив на нём не хотят писать.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру