CS/ETC.

디버깅 똑바로 알고 사용하기(인텔리, 이클립스)

prden 2022. 12. 30. 13:40

1. 블로그

https://jojoldu.tistory.com/149

 

IntelliJ 디버깅 해보기

안녕하세요? 이번 시간엔 intellij의 debugging 을 간단하게 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와

jojoldu.tistory.com

2. 인텔리 대표 단축키 

1) shift + shift : 전체 검색

2) ctrl + e : 최근 열었던 파일 리스트 보기 

3) 로컬 개발에서는 debug로 실행 습관화

 

3. 디버깅 관련 메모

1) Break Point 우클릭 시 break에 조건 걸 수 있다. (for, while 등에서)

2) Resume : 다음 Break Point로 이동

3) Step Over : F8, 다음 라인으로 이동

4) Step Into F7, 현재 break 된 라인에서 실행하고 있는 라인으로 이동

5) Force step into : 다음 실행되는 라인으로 이동하지만, step into와 달리 stepping을 무시하고 진행 

6) Step out : 현재 break 된 라인에서 호출한 곳으로 이동. (step into로 파고들어 간 라인을 빠져나올 때 사용)

7) Drop Frame : step out과 비슷, step out은 해당 라인이 실행된 후에 돌아가지만, drop frame은 해당 라인이 실행되기 전에 돌아간다. 

8) Evaluate : break된 라인에서 사용가능한 모든 코드를(현재 라인에서 사용가능한 코드(메소드 변수, 클래스 필드 등)) 실행할 수 있다. 

9) Watch : Evaluate랑 기능은 동일, Evaluate는 코드를 계속 수동 실행해야 하지만, Watch는 삭제하지 않는 한 break line이 실행될 때마다 자동으로 실행된다. Watch는 여러 디버깅 코드의 결과를 동시에 확인이 가능하고, 반복적으로 디버깅 코드를 사용할 필요 없어서 더 유용함. 

10) Call Stack : 디버깅 화면의 좌측 하단에는 해당 break line에 오기까지 call stack이 출력된다. 

 

4. 기타

 1) long, float 타입 오류 : 

https://itbeginner2020.tistory.com/10

 

long,float 타입 오류 : 왜 리터럴 뒤에 L,F 을 붙여야 할까?

※ 리터럴은 데이터값을 의미한다. long 타입으로 변수를 선언하고 값을 초기화 할 때에는 반드시 리터럴 뒤에 소문자나 대문자 L 을 붙여주어야 한다. long 타입의 변수 lo 를 선언하고 정수의 데

itbeginner2020.tistory.com

 

5. 이클립스 디버깅 

https://coding-factory.tistory.com/642

 

[IDE] 이클립스(Eclipse) 디버깅 하는법

프로그래밍을 하다 보면 필연적으로 각종 오류에 부딪치게 되고 그 오류를 해결하는 과정에서 디버깅은 필수입니다. 디버깅을 얼마나 잘하느냐에 따라 프로그램의 생산성과 개발자의 능력이

coding-factory.tistory.com