Ответ
Azure Functions поддерживает несколько языков программирования и сред выполнения. Основные из них:
- C# (.NET Core/.NET 6+): Наиболее интегрированный вариант, особенно для стека Microsoft. Можно писать как в виде изолированных процессов, так и в процессе .NET.
- JavaScript/Node.js: Широко используется для серверных сценариев и интеграций.
- Python: Популярен для задач обработки данных, машинного обучения и скриптинга.
- Java: Применяется в корпоративных средах, часто с Spring Cloud Function.
- PowerShell: Для автоматизации и администрирования в среде Azure.
- TypeScript, F#, PHP (через Custom Handlers).
Выбор зависит от задачи, производительности, существующей кодовой базы команды и экосистемы необходимых библиотек. Например, для высоконагруженного API на корпоративном стеке Microsoft выбирают C#, а для быстрого прототипирования скрипта обработки событий — Python.
Ответ 18+ 🔞
Давай разберем, на чем эти твои функции в Azure писать можно, а то глаза разбегаются, как в хорошем меню. Выбор, конечно, овердохуища, но и запутаться — раз плюнуть.
Ну, во-первых, C# на .NET. Это как родной сын для всей этой экосистемы Microsoft. Самый интегрированный, самый облизованный. Если у тебя всё крутится вокруг их стека — это твой беспроигрышный вариант. Пишешь, и всё просто работает, без лишних плясок с бубном. Можно и в изоляции, и в общем процессе — как душе угодно.
Дальше идёт JavaScript, а точнее Node.js. Ну, это классика жанра для всяких серверных скриптов и быстрых интеграций. Знаешь JS? Значит, уже можешь что-то слепить. Просто, быстро, куча библиотек на любой, даже самый извращённый, случай.
Python — это, блядь, для умных. Ну или для тех, кто делает что-то с данными, машинным обучением или просто любит писать скрипты, от которых у C#-разработчика волосы дыбом встанут. Популярен, читаем, но тут уже надо смотреть на производительность в конкретных сценариях, а то может и подвести.
Java. А вот это уже серьёзно, ёпта. Корпоративный уровень. Если у тебя вся команда дышит Spring'ом и смотрит на мир через призму JVM — то тебе сюда. Мощно, надёжно, но иногда и ceremony этой самой — хоть жопой ешь.
PowerShell — это отдельная песня. Не для веб-API, конечно, а для всякой админской автоматизации внутри Azure. Скрипт написал — и пол-инфраструктуры переконфигурировал. Удобная штука в своём нише.
А ещё есть TypeScript, F#, PHP через какие-то кастомные обработчики... В общем, вариантов — хуй с горы.
Так на чём же писать-то, чувак? А вот тут надо головой думать, э бошка! Смотри:
- Задача: Делаешь высоконагруженный API в мире Microsoft? Бери C# и не парься.
- Задача: Надо быстро наколбасить скрипт, который триггерится событием из хранилища и что-то там обрабатывает? Python или Node.js — твои лучшие друзья.
- Задача: У тебя вся кодовая база на Java и команда с неё не слезает? Ну, понятное дело, Java и выбирай, чего уж там.
- Задача: Админ ты наш, и нужно автоматизировать рутину? PowerShell в руки и вперёд.
Главное — не быть тем распиздяем, который для микросервиса на три вызова тянет за собой Spring Boot со всеми потрохами. Соизмеряй инструмент с работой, и будет тебе счастье. А то ведь можно и так накодить, что потом сам от себя охуеешь.