[Java] 02. 디버깅
2023. 9. 21. 17:13
🧑🏻💻 하루코딩 님의 Do it! 알고리즘 코딩테스트 강의(인프런)를 듣고 정리한 내용입니다.
02. 코드의 논리 오류를 잡는 방법 - 디버깅
- 디버깅(Debugging)이란?
: 프로그램에서 발생하는 문법 오류나 논리 오류를 찾아 바로잡는 과정이다.
: 문법 오류는 컴퍼일러가 자동으로 찾아주기 때문에 문제가 되지 않지만 논리 오류는 코드가 사용자의 의도와 다르게 동작하는 것이며 다양한 형태로 발생하기 때문에 찾기가 쉽지 않다. 그렇기 때문에 디버깅이 필요하다. - 디버깅하는 법
- 코드에서 디버깅하고자 하는 줄에 중단점(break point)을 설정한다. (여러 개 설정 가능)
- IDE의 디버깅 기능을 실행하면 코드를 한 줄씩 실행하거나 다음 중단점까지 실행할 수 있으며 이 과정에서 추적할 변숫값도 지정할 수 있다. 이 방법을 통해 변숫값이 자신이 의도한 대로 바뀌는지 파악한다.
- 변숫값 이외에도 원하는 수식을 입력해 논리 오류를 파악할 수 있다.
✔️ 디버깅이 필요한 이유?
- 실수하기 쉬운 오류에 대해서 빠르게 발견할 수 있다.
- 코딩 테스트 문제를 한 번에 풀지 못했을 경우 에러를 얼마나 빨리 찾아서 해결하느냐의 시간 싸움이기 때문에 에러를 빠르게 찾을 수 있는 디버깅이 중요하다.
- 가장 하기 쉬운 실수 중 하나, ⭐️ 자료형 범위 오류 ⭐️
: int의 경우 자기가 표현할 수 있는 수를 넘어가면 음수로 나온다.
: 위와 같은 오류를 예방하는 방법은 변수를 처음부터 long형으로 선언하는 것이다.
'코딩테스트 > 알고리즘' 카테고리의 다른 글
[Java] 03-2. 자료구조 : 구간 합 구하기 1 (0) | 2023.09.23 |
---|---|
[Java] 실전 문제 - 평균구하기(백준 1546) (0) | 2023.09.23 |
[Java] 실전 문제 - 숫자의 합 구하기(백준 11720) (0) | 2023.09.23 |
[Java] 03-1. 자료구조 : 배열과 리스트 (0) | 2023.09.21 |
[Java] 01. 시간 복잡도 (0) | 2023.09.21 |