Azure Functions를 로컬에서 코딩 및 테스트Code and test Azure Functions locally

Azure Portal에서 Azure Functions를 개발하고 테스트할 수 있지만 대부분의 개발자는 로컬 개발 환경을 선호합니다.While you're able to develop and test Azure Functions in the Azure portal, many developers prefer a local development experience. Functions를 사용하면 즐겨 찾는 코드 편집기와 개발 도구를 사용하여 로컬 컴퓨터에서 함수를 쉽게 만들고 테스트할 수 있습니다.Functions makes it easy to use your favorite code editor and development tools to create and test functions on your local computer. 로컬 함수는 라이브 Azure 서비스에 연결할 수 있고 사용자는 전체 Functions 런타임을 사용하여 로컬 머신에서 해당 함수를 디버깅할 수 있습니다.Your local functions can connect to live Azure services, and you can debug them on your local computer using the full Functions runtime.

로컬 개발 환경Local development environments

로컬 컴퓨터에서 함수를 개발하는 방식은 언어 및 기본 도구에 따라 달라집니다.The way in which you develop functions on your local computer depends on your language and tooling preferences. 다음 표에서 환경은 로컬 개발을 지원합니다.The environments in the following table support local development:

EnvironmentEnvironment LanguagesLanguages 설명Description
명령 프롬프트 또는 터미널Command prompt or terminal C#(클래스 라이브러리), C# 스크립트(.csx), JavaScriptC# (class library), C# script (.csx), JavaScript Azure Functions 핵심 도구 로컬 개발을 사용 하도록 설정 하는 함수를 만들기 위한 core 런타임 및 템플릿을 제공 합니다.Azure Functions Core Tools provides the core runtime and templates for creating functions, which enable local development. 버전 2.x는 Linux, MacOS 및 Windows에서 개발을 지원합니다.Version 2.x supports development on Linux, MacOS, and Windows. 모든 환경은 로컬 Functions 런타임에 대한 핵심 도구를 사용합니다.All environments rely on Core Tools for the local Functions runtime.
Visual Studio CodeVisual Studio Code C#(클래스 라이브러리), C# 스크립트(.csx), JavaScriptC# (class library), C# script (.csx), JavaScript VS Code용 Azure Functions 확장은 VS Code에 Functions 지원을 추가합니다.The Azure Functions extension for VS Code adds Functions support to VS Code. 핵심 도구가 필요합니다.Requires the Core Tools. 2.x 버전의 핵심 도구를 사용하면 Linux, MacOS 및 Windows에서 개발을 지원합니다.Supports development on Linux, MacOS, and Windows, when using version 2.x of the Core Tools. 자세한 내용은 Visual Studio Code를 사용하여 첫 번째 함수 만들기를 참조하세요.To learn more, see Create your first function using Visual Studio Code.
Visual Studio 2019Visual Studio 2019 C#(클래스 라이브러리)C# (class library) 에 포함 된 Azure Functions 도구는 Azure 개발 워크 로드 Visual Studio 2019 이상.The Azure Functions tools are included in the Azure development workload of Visual Studio 2019 and later versions. 클래스 라이브러리에서 함수를 컴파일하고 .dll을 Azure에 게시할 수 있습니다.Lets you compile functions in a class library and publish the .dll to Azure. 로컬 테스트에 대한 핵심 도구를 포함합니다.Includes the Core Tools for local testing. 자세한 내용은 Visual Studio를 사용하여 Azure Functions 개발을 참조하세요.To learn more, see Develop Azure Functions using Visual Studio.
Maven(다양)Maven (various) JavaJava 핵심 도구와 통합하여 Java 함수를 개발할 수 있습니다.Integrates with Core Tools to enable development of Java functions. 버전 2.x는 Linux, MacOS 및 Windows에서 개발을 지원합니다.Version 2.x supports development on Linux, MacOS, and Windows. 자세한 내용은 Java 및 Maven을 사용하여 Azure에서 첫 번째 함수 만들기를 참조하세요.To learn more, see Create your first function with Java and Maven. 또한 EclipseIntelliJ IDEA를 사용한 개발을 지원합니다.Also supports development using Eclipse and IntelliJ IDEA

중요

로컬 개발과 포털 개발을 동일한 함수 앱에 혼합하지 않도록 합니다.Do not mix local development with portal development in the same function app. 로컬 프로젝트에서 함수를 만들고 게시할 경우 포털에서 프로젝트 코드를 유지하거나 수정하려고 하지 않아야 합니다.When you create and publish functions from a local project, you should not try to maintain or modify project code in the portal.

이러한 로컬 개발 환경 각각을 통해 함수 앱 프로젝트를 만들고 미리 정의된 함수 템플릿을 사용하여 새 함수를 만들 수 있습니다.Each of these local development environments lets you create function app projects and use predefined Functions templates to create new functions. 각각은 핵심 도구를 사용합니다. 다른 앱처럼 고유한 머신에서 실제 Functions 런타임에 대해 함수를 테스트하고 디버그할 수 있습니다.Each uses the Core Tools so that you can test and debug your functions against the real Functions runtime on your own machine just as you would any other app. 이러한 환경 중 하나의 함수 앱 프로젝트를 Azure에 게시할 수도 있습니다.You can also publish you function app project from any of these environments to Azure.

다음 단계Next steps