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

В этой статье перечислены уровни поддержки языков, используемых с решением "Функции Azure".This article explains the levels of support offered for languages that you can use with Azure Functions.

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

Уровней поддержки три:There are three 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.
  • Экспериментальные — языки, которые не поддерживаются и могут быть удалены в будущем. Нет гарантии, что они будут поддерживаться в качестве общедоступных.Experimental - Not supported and might be abandoned in the future; no guarantee of eventual preview or GA status.

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

Доступны две версии среды выполнения в решении "Функции Azure".Two 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. x13.x1
C#C# Общедоступная версия (.NET Framework 4.7)GA (.NET Framework 4.7) Общедоступная версия (.NET Core 2,2)GA (.NET Core 2.2) Предварительный просмотр (.NET Core 3. x)Preview (.NET Core 3.x)
JavaScriptJavaScript Общедоступная версия (Node 6)GA (Node 6) Общедоступная версия (Node 8 и Node 10)GA (Node 8 & 10) Предварительная версия (node 8 & 10)Preview (Node 8 & 10)
F#F# Общедоступная версия (.NET Framework 4.7)GA (.NET Framework 4.7) Общедоступная версия (.NET Core 2,2)GA (.NET Core 2.2) Предварительный просмотр (.NET Core 3. x)Preview (.NET Core 3.x)
JavaJava НедоступноN/A GA (Java 8)GA (Java 8) Предварительная версия (Java 8)Preview (Java 8)
PowerShellPowerShell Экспериментальная возможностьExperimental Общедоступная версия (PowerShell Core 6)GA (PowerShell Core 6) Предварительная версия (PowerShell Core 6)Preview (PowerShell Core 6)
PythonPython Экспериментальная возможностьExperimental GA (Python 3.7. x)GA (Python 3.7.x) Предварительная версия (Python 3.7. x)Preview (Python 3.7.x)
TypeScriptTypeScript Экспериментальная возможностьExperimental Общедоступная версия2GA2 Предварительная версия2Preview2
BashBash Экспериментальная возможностьExperimental НедоступноN/A НедоступноN/A
Пакет (CMD-файл, BAT-файл)Batch (.cmd, .bat) Экспериментальная возможностьExperimental НедоступноN/A НедоступноN/A
PHPPHP Экспериментальная возможностьExperimental НедоступноN/A НедоступноN/A

1 Среда выполнения функций v3. x находится на этапе предварительной версии.1The Functions v3.x runtime is in preview.
2 Поддерживается через транскомпиляцией для JavaScript.2Supported through transpiling to JavaScript.

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

Языки, используемые в режиме экспериментальной версииExperimental languages

Языки, используемые как экспериментальные, в версии 1.x не масштабируются должным образом и поддерживают не все привязки.The experimental languages in version 1.x don't scale well and don't support all bindings.

Но не используйте экспериментальные функции для важных задач, так как эти функции не поддерживаются официально.Don't use experimental features for anything that you rely on, as there is no official support for them. Случаи поддержки не следует открывать для проблем, если применяются языки, используемые в качестве экспериментальных.Support cases should not be opened for problems with experimental languages.

В среде выполнения версии 2.x не предоставляется поддержка языков, используемых в качестве экспериментальных.The version 2.x runtime doesn't support experimental languages. Поддержка новых языков добавляется только в том случае, если язык может поддерживаться в рабочей среде.Support for new languages is added only when the language can be supported in production.

Расширяемость языка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: