다음을 통해 공유


.NET MAUI로 Windows 앱 빌드

.NET 다중 플랫폼 앱 UI(.NET MAUI)는 C#을 사용하거나 선택적으로 XAML을 사용하여 네이티브 모바일 및 데스크톱 앱을 만들기 위한 플랫폼 간 프레임워크입니다. .NET MAUI를 사용하여 단일 공유 코드 베이스에서 Windows, Android, iOS, macOS 및 Samsung Tizen에서 실행할 수 있는 앱을 개발할 수 있습니다. .NET MAUI를 사용하여 Windows 앱을 빌드하는 경우 WinUI 3을 기본 플랫폼으로 사용하므로 Windows 10 버전 1809 이상 및 Windows 11에서 실행됩니다.

Windows에서 .NET MAUI를 사용하는 이유는 무엇인가요?

.NET MAUI를 사용하여 Windows용 앱을 빌드하면 다음과 같은 이점이 제공됩니다.

  • Windows의 네이티브: .NET MAUI는 Windows를 대상으로 할 때 WinUI 앱을 만듭니다. 즉, .NET MAUI 앱은 Windows에서 Windows 앱 SDK 애플리케이션과 동일한 사용자 환경을 제공합니다.
  • 코드의 사용자 인터페이스: .NET MAUI Community Toolkit에는 C# 코드로 사용자 인터페이스를 빌드하기 위한 유창한 도우미 메서드 집합인 C# Markup이 포함되어 있습니다. 이렇게 하면 XAML과 마찬가지로 UI와 앱의 비즈니스 논리 간에 문제를 분리할 수 있습니다. C# 태그는 .NET MAUI가 지원하는 모든 플랫폼에서 사용할 수 있습니다.
  • 플랫폼 간: Windows 앱을 Android, iOS, macOS 및 Samsung Tizen 디바이스를 포함하여 지원되는 모든 플랫폼으로 사용합니다.
  • 단순성: .NET MAUI에서 지원하는 모든 플랫폼을 대상으로 할 수 있는 단일 공유 프로젝트에서 개발합니다.
  • Hot Reload: .NET MAUI의 .NET Hot ReloadXAML Hot Reload 지원을 통해 디버깅하는 동안 시간을 절약합니다. 앱이 실행되고 변경 내용이 자동으로 적용되는 동안 편집합니다.
  • 네이티브 API: .NET MAUI는 각 플랫폼의 네이티브 기능을 위한 플랫폼 간 API를 제공합니다. .NET MAUI의 플랫폼 간 API에서 사용할 수 없는 네이티브 API의 경우 플랫폼별 코드를 호출할 수 있습니다.

Windows용 새 앱을 빌드할 계획이며 추가 플랫폼을 대상으로 하려는 경우 .NET MAUI를 사용하는 것이 좋습니다. 앱에서 Windows만 대상으로 하는 경우 Windows 앱 SDK를 계속 사용해야 하는 몇 가지 이유가 있습니다.

  • 친숙함: .NET MAUI XAML과 Windows 앱 SDK XAML에는 몇 가지 차이점이 있습니다. UWP 및 Windows 앱 SDK의 XAML에 익숙한 경우 .NET MAUI 컨트롤 및 XAML 구문을 사용하는 약간의 학습 곡선을 갖게 될 것입니다.
  • 네이티브 컨트롤: .NET MAUI는 현재 Windows 앱 SDK 컨트롤 사용을 지원하지 않습니다. 타사 또는 오픈 소스 컨트롤을 다시 사용하거나 사용하려는 다른 Windows 앱 SDK 프로젝트의 기존 컨트롤이 있는 경우 .NET MAUI 프로젝트에 대한 대안을 찾아야 합니다.
  • Windows에 더 가깝게: .NET MAUI 앱을 작성할 때 Windows 앱 SDK 앱을 출력하지만 코드에서 네이티브 Windows 앱으로 변환해야 하는 부분이 있습니다. Windows 앱 SDK 사용하면 해당 변환 단계를 제거하고 스타일, API 호환성 또는 레이아웃에 문제가 발생할 가능성이 줄어듭니다.

Windows 개발자를 위한 .NET MAUI 리소스

.NET MAUI 설명서

.NET MAUI 문서에는 Windows를 비롯한 모든 플랫폼의 .NET MAUI 개발에 대해 학습하기 위한 리소스가 포함되어 있습니다.

WinUI 설명서

WinUI 문서를 탐색하여 WinUI의 기능에 대해 알아봅니다.

.NET Conf: MAUI에 집중

2022년 8월의 이 1일 라이브 스트림 에는 Microsoft 및 .NET MAUI 개발자 커뮤니티의 연사가 등장했습니다. 앱을 빌드하고 .NET MAUI를 빌드하는 팀의 의견을 듣는 방법을 알아봅니다.

.NET MAUI 블로그 게시물

GitHub

.NET MAUI는 오픈 소스이며 GitHub에서 호스팅됩니다. .NET MAUI 리포지토리를 사용하여 기능 요청 또는 버그를 제출하고, 개발 팀과 상호 작용하고, wiki를 탐색합니다.

샘플 코드

샘플 브라우저 또는 dotnet/maui-samples에 있는 GitHub에서 .NET MAUI 코드 샘플을 탐색합니다.

특정 작업을 보여 주는 샘플

샘플 이름/링크 작업
애니메이션 애니메이션을 사용하여 앱을 생기를 불어넣으세요.
특성 동작 클래스를 컨트롤에 연결하는 대신 동작을 사용하여 서브클래싱 하지 않고 기능을 추가합니다.
컨트롤 템플릿 ContentView 파생된 사용자 지정 컨트롤 및 ContentPage 파생된 페이지의 시각적 구조를 정의합니다.
데이터 바인딩 실제 UI 요소에 개체를 바인딩하여 변경 시 반응형으로 서로 업데이트합니다.
Shell 앱 .NET Shell 앱을 사용하여 복잡성을 줄이고, 코드를 다시 사용하고, 기존 Windows 기능(예: URI 탐색 및 통합 검색 표시줄)을 앱에 통합합니다.
트리거 트리거를 사용하여 이벤트 또는 데이터가 변경되면 특정 컨트롤을 선택적으로 업데이트, 숨기기 또는 표시합니다.

Windows의 .NET MAUI 시작

Windows에서 .NET MAUI를 시작하려면 Visual Studio 2022 버전 17.3 이상을 설치합니다.

Visual Studio를 설치하거나 수정할 때 기본 선택적 설치 옵션이 선택된 .NET 다중 플랫폼 앱 UI 개발 워크로드를 선택합니다. Visual Studio에서 워크로드를 관리하는 방법에 대한 자세한 내용은 Visual Studio 워크로드, 구성 요소 및 언어 팩 수정을 참조하세요. Visual Studio Code 및 .NET CLI를 사용하는 경우 워크로드 관리를 위해 dotnet 워크로드 명령을 사용합니다.

PC에서 개발 모드를 사용하도록 설정하지 않은 경우 개발을 위해 디바이스 사용을 참조하세요. 사용하도록 설정되지 않은 경우 Windows에서 첫 번째 .NET MAUI 프로젝트를 실행하려고 할 때 Visual Studio에서 개발 모드를 사용하도록 설정하라는 메시지가 표시됩니다.

다음 단계

Windows에서 첫 번째 .NET MAUI 앱을 만드는 과정을 확인하세요.

.NET MAUI란?

.NET MAUI 지원 플랫폼

WinUI 개요

.NET MAUI 커뮤니티 도구 키트 설명서