기록방
Java 코딩 테스트 교재 #2 본문
2장 : 코드의 논리 오류를 어떻게 잡을까?
💡 가장 뛰어난 오류 탐색 방법, 디버깅
코드에서 논리 오류를 찾을 수 있는 가장 최선의 방법은 ‘디버깅’
02-1 디버깅은 왜 중요할까?
디버깅(debugging) : 프로그램에서 발생하는 문법 오류나 논리 오류를 찾아 바로잡는 과정 (문법 오류는 컴파일러가 자동으로 찾아 주므로 테스트할 때 문제가 되지 않음)
디버깅의 중요성
많은 사람들이 조금의 차이로 코딩 테스트에 떨어지곤 했음 → 디버깅을 했다면 통과했을 것
많은 사람들이 문법을 배우는 과정에서 디버깅을 가볍게 생각하고 넘어감 하지만 디버깅은 코딩 테스트에 필요한 기술이고, 문제를 풀면서 반드시 해야하는 과정임
디버깅하는 법
코드에서 중단점(break point)을 설정하고, IDE의 디버깅 기능을 실행해 진행하면 됨
- 구체적인 디버깅 방법
- 코드에서 디버깅하고자 하는 줄에 중단점을 설정한다. 여러개도 가능하다.
- IDE의 디버깅 기능을 실행하면 코드를 1줄씩 실행하거나 다음 중단점까지 실행할 수 있으며, 추적할 변숫값도 지정 가능하다. (Expressions 사용)
- 변숫값 이외에도 원하는 수식을 입력해 논리 오류를 파악할 수 있다.
- IntelliJ의 디버깅 방법
- 코드 좌측의 줄번호 바로 오른쪽 클릭 : 빨간색 중단점 설정
- 상단 실행 옆 벌레모양 버튼 클릭 or Shift+F9
- F8 : 한 줄씩 실행
- Shfit+F9 : 다음 중단점까지 실행
02-2 디버깅 활용 사례 살펴보기
코딩 테스트를 진행하며 실수하기 쉬운 4가지 오류
1. 변수 초기화 오류
- 처음 초기화하지 않은 변수를 사용
- 2번재 사용부터 초기화하지 않아 값이 누적되어 사용
- 2번째 테스트 케이스부터 통과되지 않는다면 확인
2. 반복문에서 인덱스 범위 지정 오류
- 초기값을 0부터 시작하지 않음
- 반복문 최댓값 지정에 0을 빠뜨림
- 반복문 최댓값 지정에 N인지 N-1인지 유의
3. 잘못된 변수 사용 오류
- 출력 부분이나 로직 안에서 사용해야 하는 변수를 다른 변수와 혼동
- 반복문안에서 반복 변수가 아닌 기존 변수 사용
- 비슷한 이름의 변수 유의
4. 자료형 범위 오류 찾아보기
- 데이터 계산 도중 지정한 자료형 범위를 넘어가는 경우
- int에서 오버플로 발생후 음수로 변화 → long으로 선언해서 해결
💡 대부분의 코딩 테스트에서 long형으로 표현 가능하므로, 자료형은 처음부터 long형으로 선언하자
728x90
'CS > 알고리즘' 카테고리의 다른 글
Java 코딩 테스트 교재 #4 (0) | 2022.09.29 |
---|---|
Java 코딩 테스트 교재 #3 (0) | 2022.09.21 |
Java 코딩 테스트 교재 #1 (0) | 2022.09.20 |
정렬 - 버블 정렬(Bubble Sort) (0) | 2021.04.26 |
정렬 - 삽입정렬(Insertion Sort) (0) | 2021.04.26 |