Chapter 3. 디버깅 기초

Date:     Updated:

카테고리:

태그:

인프런에 있는 Rookiss님의 강의 Part1: C# 기초 프로그래밍 입문 를 듣고 정리한 필기입니다. 😀

👱‍♀️ 디버깅

  • Break Point 🔴
    • 프로그램 실행 및 디버깅시 중단점이 찍힌 코드 ‘줄’에서 멈추게 해준다.
    • 멈춘 이 곳으로부터 코드 한줄 한줄씩 실행해보는게 가능하다.
    • 개발 단계에선 괜찮지만 현재 서비스 되고 있는 프로그램에선 브레이크 포인트를 사용하는 디버깅은 할 수 없다.
      • 자동차 출시 및 출고 후에는 실시간으로 자동차 내부를 살펴볼 수 없는 것과 비슷. 개발 단계는 디버그 모드로 실행하고 중단점은 이때만 사용 가능하다. 프로그램을 출시할 때는 Release 모드로 빌드를 해서 실행하게 된다. 이미 출시한 프로그램은 중단점을 사용하여 한 줄 한 줄 실행하면서 실시간으로 살펴볼 수는 없다.
        • 내가 질문 드린건데 답변이 넘 조아서 캡처..☆

          image

    • 중단점에서 우클릭 하면 이렇게 여러 옵션들이 등장한다!

      image

      • 중단점을 한번 더 클릭하여 없앨 수도 있지만 중단점 해제를 직접 여기서 선택하면 중단점이 노란색으로 바뀐다. 중단점으로서 역할을 더 이상 하지 않아 여기서 멈추지 않겠지만 중단점으로 체크한적이 있는 코드라는 표시를 남기는 용도로 사용할 수 있다.
      • 조건을 걸어 어떤 조건이 참일 때만 해당 중단점에 멈추도록 할 수도 있다. 유용하게 쓸 수 있는 방법인 듯 !
  • 한 단계씩 코드 실행
    • 함수를 실행 코드에선 함수 내부로 들어가서 함수 내부의 코드들에 한줄 한줄 멈춰가며 보여준다.
    • 함수 내부로 내부로 들어가기 때문에 호출 스택탭을 사용한다.
      • 해당 함수를 몇 번째 코드 줄에서 호출 했었는지가 표시 됨.
      • 호출 스택에서 해당 줄들을 누르면 그 줄로 이동함.
  • 프로시저 단위 실행
    • 프로시저 = 메소드 = 함수
    • 함수 실행 부분은 함수 내부에 들어가서 한줄 한줄 실행하는 모습은 보여 주지 않고 바로 함수 리턴 값을 받아오는 부분으로 건너 뛴다. 실행 단위가 메소드 단위라서 함수를 그냥 코드 한줄로서 치부함. 함수 내부 코드로 들어가지 않음.
  • 실행 순서 나타내는 화살표를 드래그 해서 임의로 실행 순서를 변경할 수도 있다. 즉 과거, 미래로 돌릴 수도 있음!
  • 디버깅 중에도 값을 개발자가 임의로 변경할 수 있다. 이러면 변경된 메모리를 가지고 다음 줄에서 실행 됨.
  • 모두 중단 👉 일시정지 버튼이다.
    • 모두 중단을 눌러 디버깅을 잠시 일시정지하면 실행되고 있던 곳에서 딱 멈춘다!
    • 따라서 이걸 통해 알 수 없이 무한루프 뻉뺑 돌고 있는 곳이 있다면 모두 중단으로 찾을 수 있다.


🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우 
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄

맨 위로 이동하기

C Sharp 카테고리 내 다른 글 보러가기

댓글 남기기