Skip to content
///코드 디버그, 프로파일링 및 진단 | Visual Studio
코드 디버그, 프로파일링 및 진단 | Visual Studio2019-06-28T09:43:56-08:00

빠르게 버그 찾기

Debugging screenshot

디버그 언어 간 호환성

모든 코드에 대한 자세한 디버깅

디버깅하면서 편집기에서 변수에 대한 정보를 빠르게 확인합니다. 데이터 팁을 사용하여 변수의 이름과 현재 값을 보고, 개체를 확장하고 해당 요소를 보고, 변수의 값을 편집합니다.

임의의 플랫폼이나 장소

로컬, 원격 및 프로덕션 환경

데스크톱이나 Android Emulator에서 로컬 Windows 앱을 시작하거나, 원격 Azure 인스턴스, iOS 디바이스 또는 게임 콘솔을 연결하거나, 웹 브라우저에서 실행하는 등 코드가 실행되는 곳이라면 어디서나 Visual Studio에서 코드를 디버그할 수 있습니다.

IntelliTrace 및 덤프 파일 심층 분석과 같은 기능을 사용하여 프로덕션 환경에서 오프라인으로 문제를 디버그할 수 있습니다.

screenshot of debugging window
Breakpoint screenshot

세분화된 제어

중단하고 상태를 검사할 위치와 시점에 대한 정확한 결정

중단점을 사용하여 버그가 있다고 의심되는 위치에서 실행 중인 프로그램을 일시 중지합니다. 각 코드 줄을 자세히 검사하여 변수의 값, 메모리 동작 또는 코드의 분기가 실행 중인지 여부를 확인합니다.

한층 발전된 기능을 이용하여 중단점에 대한 유연한 조건과 작업을 구성하세요.

상태 검사의 유연성

런타임에 변수 값 확인

원하는 지점에서 애플리케이션을 일시 중지한 후 Visual Studio에서 다양한 방법으로 변수 값을 검사하여 가설을 형성하거나 확인할 수 있습니다.

코드를 단계별로 실행하는 동안 값을 모니터링하고 로컬 변수를 검토하고 복합식을 평가하며, 이 모든 작업을 디버거 내에서 할 수 있습니다. 대화형으로 데이터 구조를 심층적으로 쿼리할 수도 있습니다.

Inspecting variables while paused screenshot
Exception screenshot

예외 포착

잘못된 부분에 대해 알림

코드 오류 및 예기치 않은 상황이 예외로 드러납니다. 예외가 발생하면 앱 작동이 중단되거나 예외 자체가 추적할 버그가 됩니다.

Visual Studio에서 디버그하는 동안 예외 발생 시 알림을 구성하고 중점적으로 살펴볼 특정 관심 예외를 선택할 수도 있습니다. 내부 예외 정보 및 null 참조 분석에 대한 알림이 즉시 표시되며, 여기서부터는 중단점에 도달한 경우처럼 쉽게 진행됩니다.

쉬워진 스레딩

복잡한 다중 스레드 코드에 대한 제어 및 검사 간소화

다중 스레드 코드는 특히 디버그하기 어렵습니다. Visual Studio에서는 다중 스레드 실행을 한 번에 제어하고, 여러 스레드의 상태를 검사하여 상황을 큰 그림으로 확인할 수 있게 합니다.

모든 스레드 호출 스택을 단일 그래픽 보기에서 확인하고, 여러 스레드의 식을 평가하여 값을 비교합니다. 손쉽게 스레드와 작업에 대한 정보를 보고 이 정보에 플래그를 지정하고 고정시킵니다. 신속하게 실행 컨텍스트를 전환하고 스레드 표식을 사용하여 임의의 시점에 스레드가 실행 중인 코드 라인을 표시합니다.

screenshot of multiple thread call stacks in one view
Screenshot of Disassembly and Registers tools

하드웨어 수준…

코드의 요구에 따라 최대한 심도 있는 분석

특히 시스템 수준 C++ 코드의 경우, 발견하기 어려운 버그를 진단하기 위해 하드웨어 수준까지 면밀하게 접근해야 하는 경우가 있습니다. Visual Studio는 메모리, 레지스터, 디스어셈블리 창에서 이를 수행할 수 있습니다.

성능 문제 방지

빠르고 강력한 앱 만들기

코딩할 때 성능과 관련하여 최상의 선택을 하는 데 유용한 정보를 제공합니다. 디버그하는 동안 편집기 내의 PerfTips 및 진단 도구를 사용하여 코드의 성능 및 메모리 특성을 파악할 수 있습니다.

디버거 없이도, 포괄적인 프로파일링 도구를 사용하여 CPU, GPU, 메모리 사용량과 같은 앱 성능과 UI 응답성 및 네트워크 사용률을 심층적으로 분석합니다.

Diagnostics tools screenshot
Code history with diagnostic and IntelliTrace tools

“재현 안 됨” 문제 없음

.NET 코드에 대한 코드 실행 기록

편집하고 F5 키를 눌러 .NET 코드를 테스트하면 예기치 않은 동작인 버그가 발생합니다. 이 버그를 진단하는 데 몇 시간씩 걸리는 경우도 있습니다. 소스 코드를 검색하면서 관련 코드 조각을 찾고 중단점을 설정할 지점을 여러 번 반복적으로 추측하기 때문입니다.

Visual Studio 진단 도구와 IntelliTrace를 사용하면 코드 실행 기록을 확인하고 중단점 없이도 다시 이동하여 상태를 검사할 수 있습니다.

간단한 UI 디버깅

코드인 XAML 및 HTML의 특성 활용

앱을 실행하는 동안 앱이 원하는 모양으로 표시되도록 만들 수 있습니다. 다시 말해서, 이제 레이아웃을 확인하기 위해 디자인 타임 데이터에 의존하지 않아도 됩니다.

HTML 또는 XAML 사용자 인터페이스를 가진 앱의 경우, 코드 디버깅 기능을 사용하여 UI 계층의 문제를 식별합니다. 또한, Visual Studio에서는 앱이 실행되는 동안 HTML DOM을 탐색한 후 XAML 표시 트리를 사용하여 XAML 코드의 구조를 시각화할 수 있습니다.

XAML Visual Tree screenshot

Free, fully-featured IDE for students, open-source and individual
developers

Free download

Professional developer tools, services, and subscription benefits for small
teams

Free trial

End-to-end solution to meet demanding quality and scale needs of teams of all
sizes

Free trial

Feedback