디버깅이란 대부분의 경우 코드에서 버그를 제거하며 논리 오류를 찾고 수정하는 일련의 과정을 의미한다.
1945년 마크 II 컴퓨터가 릴레이 장치에 달아든 나방 때문에 고장을 일으켰고 이것을 "computer bug"라고 불렀다. 여성 컴퓨터 과학자인 Grace Hopper가 나방을 채집해 기록에 남이고 이를 "Debugging(디버깅)"작업이라고 보고하였다.
디버깅은 오류 재현, 원인 분석, 가설 설정 및 검증 등 다양한 단계를 포함하며, 오타를 찾는 코드를 검사하거나 코드 분석기를 사용하여 디버그를 할 수 있다.
💚 Debug(디버그) :
디버그란 오류 수정을 위한 특별한 모드/상태를 의미한다.
Visual Studio와 같이 IDE(통합 개발 환경)에서 '디버그 모드'를 실행하면 프로그램의 실행과정을 단계별로 추적하는 등을 할 수 있다. 또는 프로그램의 오류를 찾아내고 수정하는 행위를 의미하기도 한다.
- 디버깅 : 탐정이 수집한 증거를 바탕으로 범인을 찾아내고 사건을 해결하는 과정
- 디버그 : 범죄 현장을 조사하기 위해 탐정이 특수 장비(돋보기, 지문 재취 도구 등)를 사용하는 것
💚 Debuger(디버거):
디버거는 실행 중인 앱에 연결되며 코드를 검사할 수 있는 매우 특수한 개발자 도구이다.
쉽게 말해, 프로그램을 한 문장식 실행하면서 오류의 원인을 찾는 도구이다.
- 디버거의 명령어:
- F5(Go): 실행
- F10(Step Over): 한 문장씩 실행(함수도 하나의 문장 취급)
- F11(Step Into): 한 문장씩 실행(함수 안으로 진입)
- F9(Breakpoint): 현재 문장에 중단점을 설정
디버그 모드란 소프트웨어 개발 과정에서 오류(버그)를 찾아내고 수정하기 위해 사용되는 특별한 실행모드이다.
디버그 모드에선 프로그램의 실행 과정을 단계별로 추적하고 변수 값의 변화를 확인하며, 오류 발생 시점과 원인을 파악할 수 있다. 주로 개발자가 프로그램의 논리적 요류, 예외 처리 문제, 메모리 누수 등 다양한 버그를 찾아내고 수정하는데 사용된다.
참고,
https://learn.microsoft.com/ko-kr/visualstudio/debugger/what-is-debugging?view=vs-2022#debug-mode-vs-running-your-app,
https://sdgn.co.kr/디버그-모드-뜻-디버그-디버깅-차이/