프로그래밍을 하다 보면 점점 새로운 기능을 만드는 시간보다 버그를 찾는 시간이 더 많아집니다.
처음에는 System.out.println , console.log 를 찍는 등 원시적인 방법으로 해도 충분하지만 점점 복잡한 프로그램과 복잡한 버그들을 다루면서 이런 단순한 기능으로는 충분하지 않게 됩니다.
이럴 때 버그를 찾기 위해 편한 여러 기능을 제공해 준느 걸 디버거 라고 합니다.
보통은 IDE 에 내장 돼 있고, 흔히 제공되는 기능들이 정해져 있습니다.
사용법
우선 내가 디버깅을 하고 싶은 코드로 가고 거기에 BreakPoint 를 추가하면 됩니다.
디버깅을 하는 방법은 아래와 같이 2가지로 나누게 됩니다.
1. Line 번호가 있는 부분 마우스로 클릭하기
2. Command + F8 단축키 사용

BreakPoint 를 추가한 뒤 프로그램을 실행하면 BreakPoint 가 추가된 줄을 실행할 때 프로그램이 멈추고, 밑에 부분에 디버깅용 창이 나타납니다.
만약 창이 나타나지 않을 경우 Command + 5 를 입력하면 됩니다.

기능
우선 디버깅 창을 살펴보면 크게 4가지 부분이 있습니다.

Call Stack
우리가 Java 프로그램을 처음 실행하게 된다면 main Method 를 실행하게 됩니다.
그리고 이 main Method 는 우리가 만든 많은 Method/Class 를 호출하게 되는데 이 모든 과정을 한 눈으로 확인할 수 있는게 Call Stack 입니다. 프로그램의 전반적인 흐름을 볼때 유용하며, 어떤 메서드와 어떤 클래스가 호출되었는지 한 눈에 볼 수 있습니다.
관련 변수들
모든 프로그램은 실행하기 위해 각종 데이터를 변수에 저장하고 이 변수들에 연산을 합니다.
보통 디버깅을 한다고 하면 이 각각의 변수에 내가 의도한 대로 값이 들어가 있는지, 예상하지 못 한 값이 들어가 있다면 그 원인은 무엇인지 보면서 시작하게 됩니다.
만약 내가 원하는 값이 없다면 위의 칸에 보고 싶은 값을 넣고 엔터를 누르면 변수 목록에 추가가 됩니다.

그 외에 동작들


'Spring' 카테고리의 다른 글
| Querydsl (0) | 2025.11.12 |
|---|---|
| Swagger (0) | 2025.10.02 |
| WAR 배포 및 분석 (0) | 2025.09.25 |
| Spring 외부설정, 조회방법 (0) | 2025.09.22 |
| JPA 의 OSIV (1) | 2025.09.11 |
