코드 디버깅에 대한 코드 디버거 접근 방식 검사
- 5분
모든 개발자는 코드 버그를 처리해야 하며, 이는 개발자를 위한 삶의 방식일 뿐입니다. 때로는 버그를 빠르게 발견할 수 있습니다. 결국 코드를 작성했으며 게다가 이슈를 빠르게 찾아 해결하여 기분이 좋습니다. 하지만 필연적으로 쉽게 발견할 수 없는 버그를 검색하는 경우가 있습니다.
코드 디버깅 프로세스
코드에서 버그를 발견하면 직접적인 접근을 시도하고 싶을 수 있습니다. 이슈가 있다고 생각되는 곳을 빠르게 스캔합니다. 처음 30초 안에 성공한다면 좋습니다. 하지만 너무 푹 빠져서는 안 됩니다. 다음 스폿과 그 다음 스폿으로 계속 가지 마세요. 다음 접근 방식에 시간을 낭비하지 마세요.
- 이번에는 이슈가 해결되길 바라며 코드를 한 번만 더 읽어봅니다.
- 코드에서 몇 가지
Console.WriteLine("here")메시지를 탐색하여 앱을 통해 진행 상황을 추적합니다. - 다른 데이터를 사용하여 앱을 다시 실행합니다. 어떤 것이 작동하는지 확인하면 작동하지 않는 것을 찾아내기가 쉽습니다.
이러한 메서드로 여러 수준의 성공을 경험했을 수 있지만 속지 마세요. 더 나은 방법이 있습니다.
일반적으로 가장 효과적인 방법은 디버거를 사용하는 것입니다. 하지만 디버거란 정확히 무엇일까요?
디버거는 분석 방법으로 프로그램의 실행 흐름을 관찰하고 제어하는 데 사용되는 소프트웨어 도구입니다. 디버거는 버그의 원인을 격리하고 수정하는 데 도움이 됩니다. 디버거는 다음 두 가지 방법 중 하나를 사용하여 코드에 연결합니다.
- 자체 실행 프로세스에서 프로그램을 호스팅합니다.
- 실행 중인 프로그램에 연결된 별도의 프로세스로 실행합니다.
디버거는 다양한 버전으로 제공되며 명령줄에서 직접 작동하는 경우도 있고 그래픽 사용자 인터페이스와 함께 제공되는 경우도 있습니다. Visual Studio Code는 사용자 인터페이스에 디버거 도구를 통합합니다.
디버거를 사용하는 이유
디버거를 통해 코드를 실행하지 않는 경우 런타임에 애플리케이션에서 발생하는 상황을 추측하는 것일 수 있습니다. 디버거를 사용할 경우의 주요 혜택은 프로그램 실행을 ‘조사’할 수 있다는 것입니다. 프로그램 실행을 한 번에 코드 한 줄씩 추적할 수 있으며, 이 접근 방식은 잘못 추측할 가능성을 최소화합니다.
Visual Studio Code는 코드가 실행되는 것을 볼 수 있는 코드 디버거를 지원합니다. 다음 이미지는 강조 표시된 코드 줄에서 실행이 일시 중지된, 실행 중인 애플리케이션을 보여 줍니다. 화면 오른쪽에는 프로그램 코드가 표시되며 왼쪽에는 변수의 현재 상태가 표시됩니다.
모든 디버거에는 고유한 기능 세트가 있습니다. 거의 모든 디버거와 함께 제공되는 가장 중요한 기능 두 가지는 다음과 같습니다.
프로그램 실행 제어. 프로그램을 일시 중지하고 한 단계씩 실행하여 실행되는 코드와 프로그램 상태에 미치는 영향을 확인할 수 있습니다.
프로그램 상태 관찰. 예를 들어 코드를 실행하는 동안 언제든지 변수 값과 함수 매개 변수를 확인할 수 있습니다.
코드 디버거의 사용을 마스터하는 것은 중요한 기술입니다. 이는 아쉽게도 개발자가 종종 간과하는 기술입니다. 디버거를 효과적으로 사용하면 코드에서 버그를 더욱 효율적으로 헌팅할 수 있습니다. 또한 디버거를 사용하면 프로그램 작동 방식도 파악할 수 있습니다.
요약
이 단원에서 기억해야 하는 몇 가지 중요한 사항은 다음과 같습니다.
- 코드 디버깅은 모든 개발자가 학습하는 소프트웨어 개발 프로세스에서 중요한 기술입니다.
- 애플리케이션을 디버깅하는 가장 좋은 방법은 디버거를 사용하는 것입니다. 코드를 5번이나 재차 읽거나 코드 전체에서
console.WriteLine()문을 추가하는 것이 아닙니다. - 디버거를 사용하면 애플리케이션을 일시 중지하고 코드를 한 줄씩 단계별로 실행하며, 변수 및 함수 매개 변수의 상태를 관찰할 수 있습니다.