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

В этой статье перечислены уровни поддержки языков, используемых с решением "Функции Azure".This article explains the levels of support offered for languages that you can use with Azure Functions. Здесь также описываются стратегии создания функций с использованием неизначально поддерживаемых языков.It also describes strategies for creating functions using languages not natively supported.

Уровни поддержкиLevels of support

Существует два уровня поддержки:There are two levels of support:

  • Общедоступные — полностью поддерживаемые языки, утвержденные для использования в рабочей среде.Generally available (GA) - Fully supported and approved for production use.
  • Предварительная версия — языки, которые еще не поддерживаются, но в будущем станут общедоступными.Preview - Not yet supported but is expected to reach GA status in the future.

Языки по версии среды выполненияLanguages by runtime version

Доступны три версии среды выполнения функций Azure .Three versions of the Azure Functions runtime are available. В следующей таблице показаны поддерживаемые языки для каждой версии среды выполнения.The following table shows which languages are supported in each runtime version.

ЯзыкLanguage 1.x1.x 2.x2.x 3.x3.x
C#C# Общедоступная версия (.NET Framework 4.7)GA (.NET Framework 4.7) Общедоступная версия (.NET Core 2.2)GA (.NET Core 2.2) Общедоступная версия (.NET Core 3.1)GA (.NET Core 3.1)
JavaScriptJavaScript Общедоступная версия (Node 6)GA (Node 6) Общедоступная версия (Node 10 и Node 8)GA (Node 10 & 8) Общедоступная версия (Node 12 и Node 11)GA (Node 12 & 11)
F#F# Общедоступная версия (.NET Framework 4.7)GA (.NET Framework 4.7) Общедоступная версия (.NET Core 2.2)GA (.NET Core 2.2) Общедоступная версия (.NET Core 3.1)GA (.NET Core 3.1)
JavaJava НедоступноN/A Общедоступная версия (Java 8)GA (Java 8) Общедоступная версия (Java 111 и Java 8)GA (Java 111 & 8)
PowerShellPowerShell НедоступноN/A Общедоступная версия (PowerShell Core 6)GA (PowerShell Core 6) Общедоступная версия (PowerShell 7 и Core 6)GA (PowerShell 7 & Core 6)
PythonPython НедоступноN/A Общедоступная версия (Python 3.7 и 3.6)GA (Python 3.7 & 3.6) Общедоступная версия (Python 3.8, 3.7 и 3.6)GA (Python 3.8, 3.7, & 3.6)
TypeScriptTypeScript НедоступноN/A Общедоступная версия2GA2 Общедоступная версия2GA2

1 Сейчас поддержка версий языков доступна в предварительной версии.1 Language version support is currently in preview.
2 Поддерживается посредством транскомпиляции в JavaScript.2 Supported through transpiling to JavaScript.

Сведения о запланированных изменениях поддержки языков см. в стратегии развития Azure.For information about planned changes to language support, see Azure roadmap.

Пользовательские обработчики (Предварительная версия)Custom handlers (preview)

Пользовательские обработчики — это упрощенные веб-серверы, которые получают события от узла функций Azure.Custom handlers are lightweight web servers that receive events from the Azure Functions host. Любой язык, поддерживающий примитивы HTTP, может реализовать пользовательский обработчик.Any language that supports HTTP primitives can implement a custom handler. Это означает, что пользовательские обработчики можно использовать для создания функций на языках, которые не поддерживаются официально.This means that custom handlers can be use to create functions in languages that aren't officially supported. Дополнительные сведения см. в статье пользовательские обработчики функций Azure (Предварительная версия).To learn more, see Azure Functions custom handlers (preview).

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

Начиная с версии 2. x среда выполнения разработана таким образом, чтобы обеспечить расширяемость языка.Starting with version 2.x, the runtime is designed to offer language extensibility. Языки JavaScript и Java в среде выполнения 2.x поддерживают эту расширяемость.The JavaScript and Java languages in the 2.x runtime are built with this extensibility.

Дальнейшие шагиNext steps

Дополнительные сведения о разработке функций на поддерживаемых языках см. в следующих ресурсах:To learn more about how to develop functions in the supported languages, see the following resources: