Linguagens com suporte no Azure FunctionsSupported languages in Azure Functions

Este artigo explica os níveis de suporte oferecido para linguagens que você pode usar com o Azure Functions.This article explains the levels of support offered for languages that you can use with Azure Functions. Ele também descreve estratégias para a criação de funções usando linguagens que não têm suporte nativo.It also describes strategies for creating functions using languages not natively supported.

Níveis de suporteLevels of support

Há dois níveis de suporte:There are two levels of support:

  • Geralmente disponível (GA) – com suporte total e aprovado para uso em produção.Generally available (GA) - Fully supported and approved for production use.
  • Versão prévia – ainda não tem suporte, mas é esperado para alcançar o status de GA no futuro.Preview - Not yet supported but is expected to reach GA status in the future.

Idiomas por versão de tempo de execuçãoLanguages by runtime version

Três versões do tempo de execução de Azure Functions estão disponíveis.Three versions of the Azure Functions runtime are available. A tabela a seguir indica quais linguagens têm suporte em cada versão de runtime.The following table shows which languages are supported in each runtime version.

LinguagemLanguage 1.x1.x 2. x2.x 3.x3.x
C#C# GA (.NET Framework 4.7)GA (.NET Framework 4.7) GA (.NET Core 2,2)GA (.NET Core 2.2) GA (.NET Core 3,1)GA (.NET Core 3.1)
JavaScriptJavaScript GA (Nó 6)GA (Node 6) GA (Nó 8 e 10)GA (Node 8 & 10) GA (nó 10 & 12)GA (Node 10 & 12)
F#F# GA (.NET Framework 4.7)GA (.NET Framework 4.7) GA (.NET Core 2,2)GA (.NET Core 2.2) GA (.NET Core 3,1)GA (.NET Core 3.1)
JavaJava N/DN/A GA (Java 8)GA (Java 8) GA (Java 8)GA (Java 8)
PowerShellPowerShell N/DN/A GA (PowerShell Core 6)GA (PowerShell Core 6) GA (PowerShell Core 6)GA (PowerShell Core 6)
PythonPython N/DN/A GA (Python 3,6 & 3,7)GA (Python 3.6 & 3.7) GA (Python 3,6, 3,7, & 3,8)GA (Python 3.6, 3.7, & 3.8)
TypeScriptTypeScript N/DN/A GA1GA1 GA1GA1

1 Com suporte por meio de transpiling para JavaScript.1Supported through transpiling to JavaScript.

Para obter informações sobre alterações planejadas para o suporte de linguagem, consulte o roteiro do Azure.For information about planned changes to language support, see Azure roadmap.

Manipuladores personalizados (versão prévia)Custom handlers (preview)

Os manipuladores personalizados são servidores Web leves que recebem eventos do host Azure Functions.Custom handlers are lightweight web servers that receive events from the Azure Functions host. Qualquer linguagem que ofereça suporte a primitivos HTTP pode implementar um manipulador personalizado.Any language that supports HTTP primitives can implement a custom handler. Isso significa que os manipuladores personalizados podem ser usados para criar funções em linguagens que não são oficialmente suportadas.This means that custom handlers can be use to create functions in languages that aren't officially supported. Para saber mais, consulte Azure Functions manipuladores personalizados (versão prévia).To learn more, see Azure Functions custom handlers (preview).

Extensibilidade de linguagemLanguage extensibility

A partir da versão 2. x, o tempo de execução foi projetado para oferecer extensibilidade de linguagem.Starting with version 2.x, the runtime is designed to offer language extensibility. As linguagens JavaScript e Java no runtime 2.x são criadas com essa extensibilidade.The JavaScript and Java languages in the 2.x runtime are built with this extensibility.

Próximas etapasNext steps

Para saber mais sobre como desenvolver funções nos idiomas com suporte, consulte os seguintes recursos:To learn more about how to develop functions in the supported languages, see the following resources: