다음을 통해 공유


성능

사용자는 앱이 응답성을 유지하고 자연스러운 느낌을 주며 배터리를 소모하지 않기를 기대합니다. 기술적으로 성능은 기능적 요구 사항이 아니지만 성능을 기능으로 처리하는 것이 사용자의 기대를 충족하는 데 도움이 됩니다. 목표 지정 및 측정이 중요한 요소입니다. 성능에 중요한 시나리오가 무엇인지 결정합니다. 우수한 성능이란 무엇인지 정의합니다. 그런 다음 프로젝트 수명 주기 전반에 걸쳐 조기에 충분히 자주 측정하여 목표를 달성할 수 있다는 확신을 가질 수 있습니다. 이 섹션은 성능 워크플로를 구성하고, 애니메이션 결함 및 프레임 속도 문제를 해결하고, 시작 시간과 페이지 탐색 시간 및 메모리 사용량을 조정하는 방법을 설명합니다.

아직 수행하지 않은 경우 Windows 10을 대상으로 앱을 포팅하기만 해도 성능이 훨씬 향상됩니다. 여러 XAML 최적화(예: {x:Bind})는 Windows 10 앱에서만 사용할 수 있습니다. Windows 10으로 앱 포팅 및 Universal Windows Platform으로 전환하는 //build/ 세션을 참조하세요.

토픽 설명
성능 계획하기 사용자는 앱이 응답성을 유지하고, 자연스럽게 느껴지며, 배터리를 소모하지 않기를 기대합니다. 기술적으로 성능은 기능적 요구 사항이 아니지만 성능을 기능으로 처리하는 것이 사용자의 기대를 충족하는 데 도움이 됩니다. 목표 지정 및 측정이 중요한 요소입니다. 성능에 중요한 시나리오가 무엇인지 결정합니다. 우수한 성능이란 무엇인지 정의해 봅니다. 그런 다음 프로젝트 수명 주기 전반에 걸쳐 조기에 충분히 자주 측정하여 목표를 달성할 수 있다는 확신을 가질 수 있습니다.
백그라운드 작업 최적화하기 배터리에 효율적인 방식으로 백그라운드 작업을 사용하는 UWP 앱을 시스템과 연동하여 만듭니다.
ListView 및 GridView UI 최적화 GridView의 성능 및 시작 시간을 UI 가상화, 요소 감소, 항목에 대한 점진적 업데이트를 통해 개선합니다.
ListView 및 GridView 데이터 가상화 GridView 성능 및 시작 시간은 데이터 가상화를 통해 개선됩니다.
가비지 수집 성능 개선하기 C# 및 Visual Basic으로 작성한 UWP(Universal Windows Platform) 앱은 .NET 가비지 수집기의 자동 메모리 관리를 사용합니다. UWP 앱에서 .NET 가비지 수집기에 대한 동작 및 성능 모범 사례가 이 섹션에 요약되어 있습니다.
UI 스레드 응답 유지하기 컴퓨터 유형에 관계없이 사용자는 계산하는 동안 앱이 계속 응답할 것으로 기대합니다. 이는 앱에 따라 다른 항목을 의미합니다. 일부는 이는 더 실제적인 물리학을 제공하거나, 디스크나 웹에서 더 빠르게 데이터를 로드하거나, 빠르게 복잡한 화면을 제공하고 페이지를 탐색하거나, 즉시 방향을 찾거나, 데이터를 빠르게 처리하도록 변환됩니다. 계산 유형에 관계없이 사용자는 앱이 입력에 대해 작동하고 “판단”하는 동안 응답하지 않는 것으로 보이지 않기를 원합니다.
XAML 태그 최적화하기 메모리에서 개체를 생성하기 위해 XAML 태그를 구문 분석하는 작업은 복잡한 UI의 경우 시간이 많이 걸립니다. 다음은 XAML 태그 구문 분석 및 로드 시간과 앱의 메모리 효율성을 개선하기 위해 수행할 수 있는 몇 가지 작업입니다.
XAML 레이아웃 최적화하기 레이아웃은 CPU 사용과 메모리 오버헤드 모두에서 비용이 많이 드는 XAML 앱 요소입니다. 다음은 XAML 앱의 레이아웃 성능 향상을 위해 수행할 수 있는 몇 가지 간단한 절차입니다.
MVVM 및 언어 성능 팁 이 항목은 선택한 소프트웨어 디자인 패턴 및 프로그래밍 언어와 관련된 몇 가지 성능 고려 사항을 설명합니다.
앱 시작 성능 모범 사례 시작 시간이 최적화된 UWP 앱을 만들기 위해 시작 및 활성화 처리 방법을 개선합니다.
애니메이션, 미디어 및 이미지 최적화하기 매끄러운 애니메이션, 높은 프레임 속도 및 고성능 미디어 캡처 및 재생을 지원하는 UWP(Universal Windows Platform) 앱을 만듭니다.
일시 중단/다시 시작 최적화하기 프로세스 수명 시스템의 사용을 간소화하여 일시 중단 또는 종료 후 효율적으로 다시 시작하는 UWP 앱을 만듭니다.
파일 액세스 최적화하기 파일 시스템에 효율적으로 액세스하여 디스크 대기 시간 및 메모리/CPU 주기로 인한 성능 문제를 방지하는 UWP 앱을 만듭니다.
Windows 런타임 구성 요소 및 interop 최적화하기 Interop 성능 문제를 방지하면서 네이티브 형식과 관리되는 형식 간의 Interop 및 UWP 구성 요소를 사용하는 UWP 앱을 만듭니다.
프로파일링 및 성능 도구 Microsoft는 UWP 앱의 성능을 개선하는 데 도움이 되는 여러 도구를 제공합니다.