Поддерживаемые языки в решении "Функции Azure"

В этой статье перечислены уровни поддержки языков, используемых с решением "Функции Azure". Здесь также описываются стратегии создания функций с использованием языков, не имеющих встроенной поддержки.

Уровни поддержки

Различают два уровня поддержки:

  • Общедоступные — полностью поддерживаемые языки, утвержденные для использования в рабочей среде.
  • Предварительная версия — языки, которые еще не поддерживаются, но в будущем станут общедоступными.

Разбивка языков по версиям среды выполнения

Сейчас доступны три версии среды выполнения в решении "Функции Azure". В следующей таблице показаны поддерживаемые языки для каждой версии среды выполнения.

Язык 1.x 2.x 3.x
C#1 GA (.NET Framework 4.8) GA (.NET Core 2.12) Общедоступная версия (.NET Core 3.1)
GA (.NET 5.0)
JavaScript Общедоступная версия (Node 6) Общедоступная версия (Node 10 и Node 8) Общедоступная версия (Node 14, 12 и 10)
F# GA (.NET Framework 4.8) GA (.NET Core 2.12) Общедоступная версия (.NET Core 3.1)
Java Недоступно Общедоступная версия (Java 8) Общедоступная версия (Java 11 и Java 8)
PowerShell Недоступно Общедоступная версия (PowerShell Core 6) Общедоступная версия (PowerShell 7.0 и Core 6)
Python Недоступно Общедоступная версия (Python 3.7 и 3.6) Общедоступная версия (Python 3.8, 3.7 и 3.6)
Предварительная версия (Python 3.9)
TypeScript Недоступно GA3 GA3

1 Доступна экспериментальная версия Функций Azure, которая позволяет использовать предварительную версию .NET 6.0. Дополнительные сведения см. на странице Предварительный просмотр функций Azure v4. 2 Приложения библиотеки классов .NET, предназначенные для среды выполнения версии 2.x, работают на .NET Core 3.1 в режиме совместимости с .NET Core 2.x. Чтобы узнать больше, ознакомьтесь с рекомендациями по Функциям версии 2.x.
3 Поддерживается путем переноса в JavaScript.

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

Поддержка основной версии языка

Функции Azure гарантируют поддержку основных версий языков программирования. Для большинства языков доступны дополнительные версии, которые обновляют основные, например Python 3.9.1 и Node 14.17. По мере появления новых дополнительных версий для поддерживаемых языков, дополнительные версии, используемые вашими приложениями-функциями, автоматически обновляются до более новых.

Примечание

Так как Функции Azure могут аннулировать поддержку более старых дополнительных версий при доступности новых, не закрепляйте свои приложения-функции за определенной дополнительной версией языка программирования.

Пользовательские обработчики

Пользовательские обработчики представляют собой упрощенные веб-серверы, которые получают события от узла Функций Azure. Пользовательский обработчик можно реализовать на любом языке, который поддерживает примитивы HTTP. Это означает, что с помощью пользовательских обработчиков можно создавать функции даже на тех языках, которые не имеют официальной поддержки. Дополнительные сведения см. в статье Пользовательские обработчики Функций Azure.

Расширяемость языка

Начиная с версии 2.x среда выполнения поддерживает расширяемость языков. Языки JavaScript и Java в среде выполнения 2.x поддерживают эту расширяемость.

Дальнейшие действия

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