[JAVA] 이클립스 _ 디버깅

김나영·2023년 4월 10일
0

JAVA

목록 보기
12/14
post-thumbnail

디버깅

소스코드에서 잘못된 코드를 발견하고 올바르게 동작하는 과정

디버깅 프로세스 작동 원리

참고

  • 오류 식별
    개발자, 테스터 및 최종 사용자가 소프트웨어를 테스트하거나 사용하는 동안 발견한 버그 보고.
    개발자가 버그의 원인이 된 정확한 코드 줄 또는 코드 모듈을 찾음.

  • 오류 분석
    코더가 모든 프로그램 상태 변경 및 데이터 값을 기록하여 오류를 분석. 소프트웨어 기능에 영향을 기준으로 버그 수정의 우선순위를 정함. 소프트웨어 팀이 개발 목표와 요구 사항에 따라 버그 수정 일정을 정함

  • 수정 및 검증
    개발자가 버그를 수정하고 테스트를 실행하여 소프트웨어가 계속 정상적으로 작동하는지 확인. 미래에 그 버그가 재발할지 확인하기 위해 새로운 테스트를 작성할 수 있음

  • 디버깅 vs 테스트
    디버깅과 테스트는 소프트웨어 프로그램이 제대로 실행되도록 보장하는 보완 프로세스. 프로그래머는 코드의 전체 섹션 또는 일부를 작성한 후, 버그와 오류를 식별하기 위해 테스트함. 버그가 발견되면, 코더가 디버깅 프로세스를 시작하고 소프트웨어에서 오류를 제거할 수 있음

디버깅이 필요한 코딩 오류란?

  • 구문 오류
    잘못 입력된 명령문이 있을때 발생하는 버그. 오타 또는 철자 오류. 구문 오류가 있으면 프로그램이 컴파일 되거나 실행되지 않음. 일반적으로 이 오류는 강조 표시되어있음

  • 의미론적 오류
    프로그래밍 명령문을 잘못 사용할 때 발생.

  • 논리 오류
    단계적 프로세스나 알고리즘을 잘못 입력할 때 발생. 여러가지 입출력 시나리오의 코드를 단계별로 살펴보면 논리 오류를 찾아낼 수 있음.

  • 런타임 오류
    소프트웨어 코드가 실행되는 컴퓨팅 환경으로 인해 발생. 메모리 공간 부족, 스택 오버플로. try-catch 사용, 적절한 메시지로 로깅하여 해결가능.

일반적인 디버깅 전략들

  • 점진적 프로그램 개발
    코드의 작은 부분을 자주 테스트할 수 있도록,

디버거

디버깅을 할때 사용하는 도구

브레이크 포인터
프로그램 실행을 멈추고 싶은 곳에서 더블클릭

디버거를 통해서 프로그램 실행

프로그램의 화면이 변경됨

resume
디버깅을 할 때 더블클릭으로 체크해놓은 곳 까지 프로그램 실행

terminate
디버깅 종료

step over
코드를 한줄 씩 실행

step into
해당 코드 라인의 메소드 상세내용 확인 가능

step Return
이전 화면으로 돌아가기

variables
디버그를 수행하면서 나오는 변수들의 값과 타입

breakepotints
현재 설정된 브레이크포인트. 브레이크포인트 설정 변경 가능

expresssions
알고싶은 변수명 입력하면 값 확인 가능

profile
응애 나 애기 개발자

0개의 댓글