The OpenNET Project / Index page

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

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

27.03.2020 20:23

Компания Apple опубликовала релиз языка программирования Swift 5.2. Официальные сборки подготовлены для Linux (Ubuntu 16.04, 18.04) и macOS (Xcode). Исходные тексты распространяются под лицензией Apache 2.0.

При подготовке нового выпуска основное внимание было уделено расширению средств диагностики в компиляторе, повышению надёжности отладки, улучшению обработки зависимостей в пакетном менеджере и расширению поддержки протокола LSP (Language Server Protocol). В язык добавлена поддержка вызываемых значений и возможность использования выражений вида "\Root.value" в качестве функций.

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

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


  1. Главная ссылка к новости (https://swift.org/blog/swift-5...)
  2. OpenNews: Компания Apple представила язык программирования Swift 5
  3. OpenNews: Создатель LLVM и Swift уходит из компании Apple
  4. OpenNews: Компания Apple представила язык программирования Swift, основанный на LLVM
  5. OpenNews: Попытка создания свободной реализации языка Swift, продвигаемого компанией Apple
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/52623-swift
Ключевые слова: swift, apple
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (46) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, Х (?), 20:45, 27/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –8 +/
    Вот неделя и пригодится. Тем, кто будет отдыхать, а то Песков сказал, что удаленщиков выходные не коснутся, они и так в офисе не толкутся.
     
     
  • 2.3, Х (?), 20:46, 27/03/2020 [^] [^^] [^^^] [ответить]  
  • –5 +/
    https://meduza.io/news/2020/03/27/kreml-predlozhil-rabotat-udalenno-na-neraboc ?
     
  • 2.25, Аноним (-), 09:04, 28/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Моя зарплата 15 тысяч. И меня совершенно не волнует мнение этих людей. И я знаю, что мое мнение их тоже не волнует. И я знаю, что таких как я подавляющее большинство.
     
     
  • 3.39, Qetzlcoatl (?), 08:02, 29/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Моя зарплата 15 тысяч

    Это, в первую очередь, нелестно характеризует вас, а не "этих людей".
    IMHO.

     
     
  • 4.41, qqq (??), 09:52, 29/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    лучше спроси 15 тык за какой период? может он в час столько закалачивает :)
     
     
  • 5.46, заминированный тапок (ok), 12:29, 30/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    с такой-то концовкой "И я знаю, что таких как я подавляющее большинство."
    думаю всё же он про месячный период
     
     
  • 6.49, Аноним (49), 14:10, 30/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Я так понимаю, это в $
     
  • 3.40, Аноним (40), 08:56, 29/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >Моя зарплата 15 тысяч.

    /thread

     

  • 1.4, A.Stahl (ok), 21:13, 27/03/2020 Скрыто модератором [﹢﹢﹢] [ · · · ]
  • –9 +/
     
     
  • 2.5, Аноним (5), 21:17, 27/03/2020 Скрыто модератором
  • +3 +/
     
  • 2.8, Аноним (8), 21:43, 27/03/2020 Скрыто модератором
  • +4 +/
     

     ....ответы скрыты модератором (2)

  • 1.6, Аноним (6), 21:27, 27/03/2020 Скрыто модератором [﹢﹢﹢] [ · · · ]
  • –3 +/
     
     
  • 2.7, Аноним (5), 21:34, 27/03/2020 Скрыто модератором
  • +1 +/
     
     
  • 3.9, Аноним84701 (ok), 21:45, 27/03/2020 Скрыто модератором
  • +/
     

     ....ответы скрыты модератором (2)

  • 1.10, Аноним84701 (ok), 21:55, 27/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    > Вместо сборщика мусора в Swift используются средства подсчёта ссылок на объекты

    Т.е. ссылки подсчитываются, но освобождать все равно нужно ручками? Или ссылки подсчитываются, но далее ничего не происходит?
    Или просто очередной "узпех" яблочных маркетолухов (потому что в остальном мире подсчет ссылок на объекты - часть GC системы и почему-то никто не заявляет, что у перла или питона нет сборщика мусора)?

     
     
  • 2.11, Аноним (11), 22:03, 27/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    У других языков есть менеджер потока =) А в Swift есть?
     
  • 2.14, Аноним (14), 23:46, 27/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Tracing garbage collection is the most common type of garbage collection – so much so that "garbage collection" often refers to tracing garbage collection, rather than other methods such as reference counting – and there are a large number of algorithms used in implementation.
     
     
  • 3.18, Аноним84701 (ok), 00:57, 28/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >> Т.е. ссылки подсчитываются, но освобождать все равно нужно ручками? Или ссылки подсчитываются, но далее ничего не происходит?
    >> почему-то никто не заявляет, что у перла или питона нет сборщика мусора
    > Tracing garbage collection is the most common type of garbage collection –
    > so much so that "garbage collection" often refers to tracing garbage
    > collection, rather than other methods such as reference counting – and
    > there are a large number of algorithms used in implementation.

    Ох уж эти яблофан^W инновативные яблодвигателипрогресса ...
    А если не просто цитировать википедию, но и немного ознакомиться с предметом и принятой терминологией? 🙄
    https://www-inst.cs.berkeley.edu/~cs164/fa12/lectures/lecture24-2x2.pdf
    >Garbage Collection: Reference Counting
    > • Idea: Keep count of number of pointers to each object.

    https://www.cs.technion.ac.il/%7Eerez/Papers/refcount.pdf
    >  "An On-the-Fly Reference-Counting Garbage Collector for Java"

    Ну и ваша любимая википедия:
    > In garbage collection algorithms, reference counts may be used to deallocate objects which are no longer needed.

     
     
  • 4.30, Аноним (14), 10:02, 28/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Попытайся ещё раз распарсить цитату.
     
     
  • 5.36, Аноним84701 (ok), 14:30, 28/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Попытайся ещё раз распарсить цитату.

    Попытайся своими словами объяснить, какое именно слово в
    > Вместо сборщика мусора в Swift используются

    тебе не понятно и что приведенная тобой цитата из википедии(!) должна подтвердить или опровергнуть 🙄

     

  • 1.13, Аноним (13), 23:42, 27/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Backend на swift можно писать под Linux? А GUI писать под Linux можно?
     
     
  • 2.15, Аноним (15), 00:19, 28/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    да. нет
     
  • 2.38, Анончик (?), 07:48, 29/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Можно есть биндинги к gtk+, но я бы не советовал для gtk+ есть Vala
     

  • 1.16, Урри (?), 00:39, 28/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Иногда мне снится страшный сон - будто я снова программирую на обджектив-си. Как же мне становится хорошо, когда я просыпаюсь и понимаю, что никогда в жизни больше этого делать не буду.

    На свифте, кстати, тоже не буду.

     
     
  • 2.22, Анонэйм (?), 02:37, 28/03/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ну, ты можешь продолжать писать на Пхп и жить с мамой
     
     
  • 3.23, Аноним (40), 03:22, 28/03/2020 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Вот не надо на пхп гнать, шикарный язык на самом деле.
     
  • 3.27, Аноним (27), 09:22, 28/03/2020 [^] [^^] [^^^] [ответить]  
  • –5 +/
    на php можно заработать денег на первоначальный взнос и купить квартиру в ипотеку

    а чтоб програмировать на swift - тебе сначала придется купить девайсы apple

    потом заработать на квартиру

    вывод - програмируя на php ты быстрее переедеш от мамы в свою квартиру

     
  • 2.42, qqq (??), 09:55, 29/03/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    а что с ним не так?
    я, конечно, могучие проекты не делал на нём, но наколенные прилады, вроде, нормально пишутся
     

  • 1.17, Главный Ананим (ok), 00:53, 28/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Вполне достойно. Для тех кто не заморачивается религиозными убеждениями, а хочет просто зарабатывать себе и своей семье на жизнь, нужно осваивать, ибо з.п. для ios и macos разработчиков выше. Использование мэйнстримного сабжа позволяет экономить время, нервы и силы на разработку.
     
     
  • 2.20, Аноним (20), 02:04, 28/03/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > нужно осваивать, ибо з.п. для ios и macos разработчиков выше

    у самой древней профессии ещё выше заработок... осваивай.

     
     
  • 3.21, Нонон (?), 02:28, 28/03/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Ахахаха, кстати тоже для тех кто не заморачивается религиозными убеждениями 😂
     
  • 2.28, annon (?), 09:27, 28/03/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Глубокий поклон илите программирования :P.

    А я лучше пока на С++ попрограммирую - почему-то никто из яблочников так и не заинтересовался профессиональным софтом в моей области. Всё им игрушки и всякий хлам подавай.

     
     
  • 3.34, Аноним (34), 12:36, 28/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Пейсали Swift всем миром на C++. Вот из-за этого и не люблю я этот езык
     
  • 2.43, Аноним (43), 17:53, 29/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >Использование мэйнстримного сабжа позволяет экономить время, нервы и силы на разработку.

    А потом потерять его (это время), переписывая свой код на новую версию, также переписывать или подменять те фреймворки, которые были написаны для старого Свифта, а теперь не поддерживаются.
    Заодно наступить на все те грабли, которые свойственны языку, которому несколько лет отроду и который обновляется каждый год.
    Это же прекрасно - заниматься не написанием софта, а изучением новых особенностей языка и систематическим переписыванием того, что уже было написано.

    Свифт - для одноразовых поделок. Про которые забудешь и поддерживать не будешь.

     

  • 1.19, Коломойский (?), 01:28, 28/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Компания Apple представила язык программирования Swift 5.2

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

     
  • 1.26, Аноним (27), 09:17, 28/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    классный язык програмирования наверное - не смог попробовать т к нету   денег на ipad / mac / iphone

    а на linux он просто бесполезен

     
     
  • 2.48, Аноним (48), 13:45, 30/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Любой платформенный проект бесполезен. Как и C##, к примеру. Кроссплатформенность - главное.
     

  • 1.29, annon (?), 09:31, 28/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > Напомним, что язык Swift наследует лучшие элементы
    > языков C и Objective-C

    ... ну сравнивания Swift с C и Objective-C, то может быть ;).
    А так сплошной NIH синдром наблюдается от Apple последние 10+ лет с целью заарканить разработчиков в свою секту, чтобы им сложнее было заниматься кросс-платформенными приложениями.

     
     
  • 2.47, Аноним (48), 13:44, 30/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Поэтому пишу на C++/Qt. Одинаково компилируется в Linux/Win/macOS.
     

  • 1.31, Аноним (31), 11:40, 28/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Перестал уважать Apple после того, как узнал, что она помелочилась поменять контакты местами в разъеме гарнитуры, ради несовместимости с Android и стандарта 3.5 Jack. Ирония в том, что только яблоюзеры и проиграли, так как андроид девайсы научились распознавать оба типа гарнитур.
     
     
  • 2.45, Аноним (45), 23:05, 29/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Я думаю это "3.5 mm TRRS plug confusion (CTIA vs OMTP)" , т.е. не Appple плохая а есть два стандарта.
     

  • 1.32, Аноним (31), 11:43, 28/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Официальные сборки подготовлены для Linux (Ubuntu 16.04, 18.04)

    К вопросу о том, какие дистры уважаемы в мире. Манжары здесь нет. Потащат в AUR.

     
     
  • 2.33, Аноним (31), 11:44, 28/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Потащат в AUR

    И будут допиливать костыли для совместимости. А потом все равно сломается, роллинг же.

     

  • 1.35, Аноним (34), 12:37, 28/03/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Курсы или учебники то есть по новому языку? А то все смотрю по Swidt 4 в основном курсы.
     
     
  • 2.37, leap42 (ok), 05:07, 29/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    https://docs.swift.org/swift-book/TheSwiftProgrammingLanguageSwift52.epub
     
  • 2.44, Аноним (43), 17:55, 29/03/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Отложите на год. Учите сразу Свифт 6.
     

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



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

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