Языковой проект Swift в 2023 году

Dec 02 2022
Что будет в центре внимания группы Swift в 2023 году и какие языковые функции мы можем ожидать в новых выпусках. Возникновение новых групп Основная группа (основная группа разработчиков языка Swift) начала дальнейшую реорганизацию с созданием нескольких рабочих групп: Был объявлен новый руководитель основной группы, Мишал Шах.

Что будет в центре внимания группы Swift в 2023 году и какие языковые функции мы можем ожидать в новых выпусках.

Появление новых групп

Основная группа (основная группа разработчиков языка Swift) начала дальнейшую реорганизацию с созданием нескольких рабочих групп:

  • Языковая рабочая группа
  • Рабочая группа веб-сайта
  • Рабочая группа по документации
  • Рабочая группа по взаимодействию C++
  • Свифт на сервере
  • Разнообразие

Был объявлен новый руководитель основной группы, Мишал Шах .

Быстрая эволюция в фокусе 2023 года

параллелизм

Команда Swift будет работать над завершением языковой поддержки параллелизма, которая появится в Swift вместе со Swift 5.5 в форме Sendableпротокола, actor, async/await. Они будут посвящены:

  • Фиксация отверстий для защиты от резьбы
  • Исправление ошибок кросс-актерных вызовов
  • Возможность non-Sendableперемещения значений между изолированными слоями

Дженерики

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

Ссылка на форум Swift по теме

Собственность — для тех товарищей Rustaceans

Для тех, кто не знаком с Rust или темой Ownership, вот видео об этом в Rust . Но зачем говорить о языке программирования Rust в Swift Evolution? Хотя я искренне верю, что популярность Rust создала новые взгляды на эти идеи и для языка Swift. Итак, в этом году команда Swift сосредоточится на:

  • Добавление возможности передачи права собственности с помощью borrowиtake
  • Добавлена ​​базовая поддержка некопируемых типов. Это позволит вам ограничить жизненный цикл критических значений. Похоже на функцию с таким же названием в ранее упомянутом Rust.

Ссылка на форум Swift по теме

Макросы

Для тех, кто не знаком с макросами из других языков программирования. Макрос на очень высоком уровне берет часть исходного кода программы во время компиляции и переводит его в другой исходный код, который затем компилируется в программу. Если вы хотите узнать больше о макросах и их использовании в Swift, я настоятельно рекомендую этот Github gist . И в 2023 году языковая команда Swift сосредоточится на этой теме, и я действительно с нетерпением жду того, что они собираются создать.

Ссылка на форум Swift по теме

С++

C++ по-прежнему является одним из наиболее часто используемых системных языков, поэтому неудивительно, что команда Swift хочет сделать его интеграцию в ваш код Swift еще проще. В этом году основная задача команды разработчиков Swift и языка C++ состоит в том, чтобы: создать более широкую документацию об интеграции API-интерфейсов C++ в Swift и наоборот, а также стабилизировать текущий прототип функциональной совместимости использования C++ в Swift и Swift в C++.

Реестр пакетов

Команда Swift сосредоточит свою работу на создании технических компонентов, необходимых для перехода SPM из экосистемы управления исходным кодом в экосистему на основе реестра, такую ​​как Cargo, NPM или Maven.

Рабочие группы Работа

У каждой рабочей группы есть свои цели на следующий год, но я не буду их записывать, так как они довольно общие, и если они вам интересны, посетите исходную статью:https://www.swift.org/blog/focus-areas-2023/или одну из ссылок на рабочие группы, упомянутые в [[#Новые группы происходят]].

Источники:

  • https://www.swift.org/blog/focus-areas-2023/
  • https://apple.github.io/swift-evolution/
  • https://forums.swift.org/