# Mono 개요

> Mono is a stable, mature .NET runtime that provides a managed environment for the just-in-time (JIT) compilation of your C# code.

**Mono 스크립팅 백엔드**는 JIT(just-in-time) 컴파일이라는 기법으로 런타임 시 코드를 컴파일합니다. Unity는 오픈 소스 [Mono 프로젝트](https://www.mono-project.com/)의 [포크](https://github.com/Unity-Technologies/mono)를 사용합니다.

일부 플랫폼은 JIT 컴파일을 지원하지 않으므로 Mono 백엔드가 모든 플랫폼에서 작동하지는 않습니다. 다른 일부 플랫폼은 JIT 및 Mono를 지원하지만 AOT(Ahead-Of-Time) 컴파일은 지원하지 않으므로 [IL2CPP 백엔드](/engine/6000.0/manual/scripting/compilation-and-code-reload/backends/il2cpp.md)를 지원할 수 없습니다. 플랫폼이 두 백엔드를 모두 지원할 수 있는 경우 Mono가 기본값입니다. 자세한 내용은 [스크립팅 제한 사항](/engine/6000.0/manual/scripting/compilation-and-code-reload/backends/restrictions.md)을 참조하십시오.

Mono는 관리되는 코드의 디버깅을 지원합니다. 자세한 내용은 [Unity에서 C# 코드 디버깅](/engine/6000.0/manual/scripting/debugging-and-diagnostics/managed-code-debugging.md)을 참조하십시오.

## Mono를 사용한 프로젝트 빌드

Unity가 사용하는 스크립팅 백엔드를 변경하여 다음 두 가지 방법 중 하나로 애플리케이션을 빌드할 수 있습니다.

* 에디터의 **Player 설정** 메뉴를 사용합니다. **Player** 설정 메뉴를 통해 스크립팅 백엔드를 변경하려면 다음 단계를 수행합니다.

  1. **Edit** > **Project Settings**로 이동합니다.
  2. **Player**를 선택하여 [인스펙터](/engine/6000.0/manual/unity-editor/using-the-editor/using-the-inspector.md)에서 현재 플랫폼에 대한 [Player](/engine/6000.0/manual/unity-editor/editor-features/comp-manager-group/class-player-settings.md) 설정을 엽니다.
  3. **Other Settings** 하위 메뉴에서 **Configuration** > **Scripting Backend**로 이동합니다.
  4. **Mono**를 선택합니다.

* 에디터 스크립팅 API를 사용합니다. [PlayerSettings.SetScriptingBackend](/engine/6000.0/script-reference/unity-editor/player-settings/set-scripting-backend.md) 프로퍼티를 사용하여 Unity가 사용하는 스크립팅 백엔드를 변경합니다.


**Player 설정의 Configuration 섹션:**
![](/api/media?file=/engine/6000.0/media/images/backend-mono.png)

빌드 프로세스를 시작하려면 **Build Profiles** 창(메뉴: **File** > **Build Profiles**)을 열고 **Build**를 선택합니다.

Mono와 IL2CPP 스크립팅 백엔드 모두 타게팅하려는 각 플랫폼에 새 빌드가 필요합니다. 예를 들어 Android와 iOS 플랫폼 둘 다 지원하려면 애플리케이션을 두 번 빌드하고 바이너리 파일도 두 개 생성해야 합니다(하나는 Android용, 하나는 iOS용).

## 추가 리소스

* [Unity .NET 기능](/engine/6000.0/manual/scripting/environment-and-tools/overview-of-dot-net-in-unity.md)
* [빌드 프로파일](/engine/6000.0/manual/unity-editor/editor-features/build-settings.md)
